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

Authors: Dario Modenini; Giacomo Curzi; Paolo Tortora
Journal: International Journal of Aerospace Engineering
 (2018)

---

## Abstract

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 2 mm with 95% confidence level.


---

## Body

## 1. 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-to-implement 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 full-scale 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 (Section2). 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.


## 2. 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; z^i is perpendicular to the top face, with outward positive, y^iis directed in the direction of the cable connection, and x^i completes the right-handed frame.Figure 1
Inclinometer adopted in the experiment.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 x^i (call the angle X) and y^i(call the angleY), that is,
(1)X=−sin−1g⋅x^ig,Y=−sin−1g⋅y^ig.We define body framex^b, y^b, and z^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 x^l, y^l, and z^l as a pseudoinertial frame of reference with: z^l is parallel and opposite to the local gravity vector, x^l points northward, and y^lcompletes 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,z^l, in body frame components u^b as a function of X and Y, while the orientation of the body about this direction is not important. From (1), it follows:
(2)u^b=sinXsinY±1−sinX2−sinY2,where the last component of u^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 sinX2+sinY2>1 due to measurement errors. We can handle such occurrence by normalizing the sine of the sensor readings through the factor sinX2+sinY2 whenever sinX2+sinY2>1.Taking two suspension points,P1 and P2, on any of the face of the proof mass, we obtain two body frame representations of the upward vertical vector, u^1 and u^2. If we call L1 and L2 the lines stemming from the suspension points and passing through the barycenter, their parametric equations are
(3)L1=P1+u^1t1,L2=P2+u^2t2,with t1,t2∈−∞,+∞. Note that, in (3), we avoided the indication of the body frame of representation for P and u^, which is from now on left implicit for ease of notation. The intersection occurs when L1t1=L2t2 or [9] when
(4)P1+u^1t1=P2+u^2t2.SubtractingP1 from both sides of (4) and crossing with u^2 yields
(5)u^1×u^2t1=P2−P1×u^2.Equation (5) can be solved for the parameter t1 by dot-multiplying by u^1×u^2 and dividing by u^1×u^22 to get
(6)t1∗=u^1×u^2⋅P2−P1×u^2u^1×u^22.And, operating symmetrically fort2 yields
(7)t2∗=u^1×u^2⋅P2−P1×u^1u^1×u^22.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,t2∗and t1∗ 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:
(8)Ctot=12P1+u^1t1∗+P2+u^2t2∗.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]).


## 3. 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
(1)
True barycenter shift due to measurement equipment
(2)
Measurement errors (inclinometer error plus analog-to-digital conversion)
(3)
Knowledge of the suspension point location
(4)
Small geometric errors of the proof massHaving 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 beCtot. This differs from the CoG of the proof mass alone, according to
(9)Ctot=Cm+Cmemmemtot,where Ctot is the estimated CoG location from the double suspension method, Cme is the CoG of the measuring equipment alone, m is the proof mass mass, mme is the mass of the ME, and mtot=m+mme. 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 (Cme) 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 Ctot of one order of magnitude lower, that is, 0.1 mm, or less. Indeed, from (9) we derive the proof mass CoG coordinates as
(10)C=Ctotmtotm−Cmemmem.Cme 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 Cme 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. 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 onCme 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.


## 4. Experiment Design and Error Source Models

As outlined in Section3, 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 Figure2. Each of those two parts introduces errors in the measurements, which are discussed, together with the respective implementation details, in the following subsections.Figure 2
Experimental setup; two consecutive suspensions as the one shown are required to locate the CoG.


### 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 thex 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 Figure3.Figure 3
Measurement equipment: exploded view (a) and CAD rendering (b).
(a)
(b)To justify the assumed error on theCme, 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 Cme (i.e., ΔCme) is the weighted sum of the 4 random variables:
(11)ΔCme=∑i=14mvimmeΔCvi.This means that the PDF ofΔCme is the convolution integral of the 4 weighted random variables ΔCvi. 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 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 (sayn=20); in force of the central limit theorem, the PDF of the sample mean resembles a normal distribution with standard deviation reduced by a factorn.


### 4.2. Suspension Mechanism

As anticipated in Section3, 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.Figure 4
Detailed view of the suspension mechanism.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.Figure 5
Schematic representation of the virtual suspension point concept.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)
(12)Δ=tanα0F/EJ.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
(13)δ=Δsinα0=EJ/Fcosα0.Equation (13) shows that δ gets smaller as α0 decreases (since EJ and F are constant); thus, we can have a worst-case estimate of δ considering a situation with large α0. Figure 3 depicts an experiment at high α0 from which one can visually estimate Δ≅0.8mm being the cable thickness 0.8 mm. Then, we obtained that δ≅1mm 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.


## 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 thex 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 Figure3.Figure 3
Measurement equipment: exploded view (a) and CAD rendering (b).
(a)
(b)To justify the assumed error on theCme, 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 Cme (i.e., ΔCme) is the weighted sum of the 4 random variables:
(11)ΔCme=∑i=14mvimmeΔCvi.This means that the PDF ofΔCme is the convolution integral of the 4 weighted random variables ΔCvi. 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 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 (sayn=20); in force of the central limit theorem, the PDF of the sample mean resembles a normal distribution with standard deviation reduced by a factorn.


## 4.2. Suspension Mechanism

As anticipated in Section3, 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.Figure 4
Detailed view of the suspension mechanism.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.Figure 5
Schematic representation of the virtual suspension point concept.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)
(12)Δ=tanα0F/EJ.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
(13)δ=Δsinα0=EJ/Fcosα0.Equation (13) shows that δ gets smaller as α0 decreases (since EJ and F are constant); thus, we can have a worst-case estimate of δ considering a situation with large α0. Figure 3 depicts an experiment at high α0 from which one can visually estimate Δ≅0.8mm being the cable thickness 0.8 mm. Then, we obtained that δ≅1mm 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.


## 5. 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 Section4.
(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 Figure6, while the suspension point coordinates are reported in Table 1.Figure 6
Workflow diagram of the validation process for the double suspension method.Table 1
Suspension point coordinates.
Number
x (body)
y (body)
z (body)
1
49.9
17.9
4.1
2
139.65
47.7
4.1
3
81.35
−4.1
−73.8
4
121.35
−4.1
−73.4
5
67.28
68.2
4.1
6
153.35
37.4
4.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=ptrue+δp, and whose output is the CoG estimate. We denote by ptrue 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: ptrue=P1,P2,X1,Y1,X2,Y2,Cme; 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, 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 u^1∥u^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.


### 5.2. Experimental Verification Method

The outcome of the Monte Carlo simulations was checked against a test campaign carried out using the experimental set up in Figure2. 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 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 we and failure otherwise. Then, if we denote by ferrwe the PDF of ΔC obtained from simulation, and Ferr the corresponding CDF, taking an error window we, Ferrwe provides the probability p that the error belongs to the error window (i.e., success): p=Ferrwe. To validate the CDF obtained through simulations against the experiments, we check that for some we is
(14)pexpwe≈pwe.In (14), pexp is the experimental probability of success given by the maximum likelihood estimator for the Bernoulli process parameter (p) [12], that is,
(15)pexpwe=swen.n being the number of trials (15) and s the number of successes given we.Note that, the larger the number of experimentsn, the higher the confidence in the estimator, (15), for pexpwe. However, our number of trials is already constrained by the considerations made in the previous section.


## 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=ptrue+δp, and whose output is the CoG estimate. We denote by ptrue 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: ptrue=P1,P2,X1,Y1,X2,Y2,Cme; 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, 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 u^1∥u^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.


## 5.2. Experimental Verification Method

The outcome of the Monte Carlo simulations was checked against a test campaign carried out using the experimental set up in Figure2. 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 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 we and failure otherwise. Then, if we denote by ferrwe the PDF of ΔC obtained from simulation, and Ferr the corresponding CDF, taking an error window we, Ferrwe provides the probability p that the error belongs to the error window (i.e., success): p=Ferrwe. To validate the CDF obtained through simulations against the experiments, we check that for some we is
(14)pexpwe≈pwe.In (14), pexp is the experimental probability of success given by the maximum likelihood estimator for the Bernoulli process parameter (p) [12], that is,
(15)pexpwe=swen.n being the number of trials (15) and s the number of successes given we.Note that, the larger the number of experimentsn, the higher the confidence in the estimator, (15), for pexpwe. However, our number of trials is already constrained by the considerations made in the previous section.


## 6. Results

Considering all possible couples of 25 suspension points, the Monte Carlo simulation explored 300 suspensions for a total number of3⋅105 trials. Figure 7 depicts the histogram of the resulting CoG error.Figure 7
Histogram of the occurrences of the CoG estimation error.The best-fit Rayleigh distribution has a shape parameterB=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 Figure8 and summarized in Table 2, which compares the CDF obtained from the simulated best-fit Rayleigh distribution (p), to the ones from experiments (pexp), according to the method outlined in Section 5.2.Figure 8
Cumulative density function of the CoG measurement error: experimental (markers) versus numerical (full line).Table 2
Bernoulli checks for different error windows.
wemm
p%
s
pexp%
0.5
18
2
13.3
0.8
39
5
33.3
1
54
8
53.3
1.5
82
13
86.7
2
95
15
100
3
99.9
15
100The agreement is very good at centralwe and poorer, but still reasonable, at extremal we. 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:
(16)ΔC=ΔCtotmtotm−ΔCmemmem,where ΔCtot is the error caused by the method when estimating the CoG of the entire assembly (ME + PUT), and ΔCme is the error made in locating the measurement equipment CoG, see (11).From (16), it appears that the uncertainty in ΔCme contributes additively to the overall error. We can thus infer that the error PDF estimated in this work can be considered a conservative estimate of the actual PDF for any situation in which either ΔCme and mme/m are equal to or smaller than the ones adopted here (having assumed all the rest being the same). Furthermore, despite the error analysis is instrumentation specific, the solution algorithm based on the double suspension method is quite general: it would apply equally if using an inclinometer or suspension mechanism that differ from the ones adopted in this work.The discussion above suggests that the accuracy of the proposed equipment shall meet the needs of a fairly large class of S/C, entailing, for example, the larger CubeSat form factors (from 6 U and above) as well as microsatellites in the 30–100 kg mass class.


## 7. Conclusions

In this work, we proposed and verified experimentally a simple method to determine the CoG of a small spacecraft, based on two consecutive suspensions. A thorough assessment of the various error sources was performed, and their impact on the estimation error was evaluated through Monte Carlo simulation. This allowed a characterization of the probability density function of the simulated CoG error as a Rayleigh distribution. Afterwards, we verified the agreement with experimental data, by comparing the simulated cumulative density function of the estimation error with the one retrieved from experiments.We found that the experimental results agree well with the simulated ones, indicating that the error PDF obtained in simulations is a good estimate of the actual one, and showing that the method is capable of accuracies in the order of 1 mm. Extrapolation of the error analysis to different experimental setups was also qualitatively assessed, showing to which extent we can assume the error distribution obtained in this work to be a conservative estimate of the actual one.The proposed method has the merit of relative simplicity and its accuracy meets the typical needs of microsatellite missions. Nevertheless, it may certainly be improved: future work may involve the development and characterization of a more compact measurement equipment and suspension mechanisms, more suitable for nanosatellites. In fact, the error budget analysis highlights that the mass of the measurement equipment and the quality of the implementation of the suspension mechanisms are crucial for a good estimate.



---

*Source: 3582508-2018-04-19.xml*