S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 In-Orbit Offline Estimation of the Residual Magnetic Dipole Biases of the POPSAT-HIP1 Nanosatellite a S. Seriani Lead and Corresponding author Dept. of Architecture and Engineering, University of Trieste, via A. Valerio 10, 34127, Trieste, Italy. e-mail: stefano.seriani@phd.units.it phone: +39 040 5582540 Y.L. Brama Microspace Rapid Pte Ltd e-mail: yesie.l.brama@micro-space.org P. Gallina Dept. of Architecture and Engineering, University of Trieste, via A. Valerio 10, 34127, Trieste, Italy. e-mail: pgallina@units.it G. Manzoni Microspace Rapid Pte Ltd e-mail: giulio.manzoni@micro-space.org ABSTRACT — The nanosatellite POPSAT-HIP1 is a Cubesat-class spacecraft launched on the 19th of June 2014 to test cold-gas based micro-thrusters; it is, as of April 2015, in a low Earth orbit at around 600km of altitude and is equipped, notably, with a magnetometer. In order to increment the performance of the attitude control of nanosatellites like POPSAT, it is extremely useful to determine the main biases that act on the magnetometer while in orbit, for example those generated by the residual magnetic moment of the satellite itself and those originating from the transmitter. Thus, we present a methodology to perform an in-orbit offline estimation of the magnetometer bias caused by the residual magnetic moment of the satellite (we refer to this as the residual magnetic dipole bias, or RMDB). The method is based on a genetic algorithm coupled with a simplex algorithm, and provides the bias RMDB vector as output, requiring solely the magnetometer readings. This is exploited to compute the transmitter magnetic dipole bias (TMDB), by comparing the computed RMDB with the transmitter operating and idling. An experimental investigation is carried out by acquiring the magnetometer outputs in different phases of the spacecraft life (stabilized, maneuvering, free tumble). Results show remarkable accuracy with an RMDB orientation error between 3.6° and 6.2°, and a module error around 7%. TMDB values show similar coherence values. Finally, we note some drawbacks of the methodologies, as well as some possible improvements, e.g. precise transmitter operations logging. In general, however, the methodology proves to be quite effective even with sparse and noisy data, and promises to be incisive in the improvement of attitude control systems. 1 Introduction The field of miniaturized satellites has been growing exponentially since the 2000s; lightweight structures and payloads, possible through the most recent miniaturization technologies, have allowed for more and more compact and light spacecraft designs. Because of this, in the last couple of years, sending a nano- or micro-satellite has become affordable for many small companies and research institutes. As with all small satellites, complex and redundant attitude instrumentation is often impractical due to its weight. Cheap miniaturized sensors (e.g. MEMS or systems-on-a-chip), on the other hand, offer generally sub-optimal results; furthermore, non-redundancy contributes to generally poorly precise measurements of the satellite attitude. This is especially important when designing the attitude control system [1]. In particular, the magnetometer readings are often disrupted because of the magnetic field produced by the spacecraft subsystems; this leads to a deviation from the nominal value of the magnetic field. On top of this, for Low Earth Orbit (LEO) objects, the magnetic field influence dominates a Abbreviations: MEMS – Micro Electro-Mechanical Systems KF – Kalman Filter UKF – Unscented Kalman Filter EKF – Extended Kalman Filter RMDB – Residual Magnetic Dipole Bias TMDB – Transmitter Magnetic Dipole Bias DE – Differential Evolution ECI – Earth-Centered Inertial LCI – Local-Centered Inertial TLE – Two-Line Elements IGRF – International Geomagnetic Reference Field IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 1 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 over other environmental effects like atmospheric drag or solar radiation pressure. Generally, this is addressed using dynamics filtering techniques, like the Kalman Filter (KF); Farahanifar et al. [2] develop an attitude estimation technique using an Unscented KF (UKF) coupled to a dynamics model of the spacecraft to determine and thus compensate the magnetometer bias and scale factors. Along the same lines, an Extended KF (EKF) is described by Inamori et al. in [3], for use in nano-satellite missions. Gebre-Egziabher et al. describe, in [4], an algorithm for the calibration of magnetometers based on ellipsoid fitting; Wu et al. present a methodology [5] based on particle swarm optimization to the same objective. Similarly, Springmann et al. in [6] use a least squares regression method to estimate the residual magnetic dipole moment of the Radio Aurora Explorer. POPSAT-HIP1 is an experimental nanosatellite of the Cubesat class that has been developed by Microspace Rapid Pte Ltd to test in space a micro-propulsion system based on cold-gas micro thrusters [7]. The satellite has been launched on the 19th of June 2014 and has been active in Low Earth Orbit (LEO) since then, at an altitude of approximately 600km. The basic attitude control is performed by means of magnetorquers while the attitude is measured by using a magnetometer and six Sun sensors placed on the satellite surfaces as well as by three single axis gyroscopes. Attitude data can be stored in sequences of 60 points with intervals variable from few seconds to a maximum of 4 minutes and are downloaded during the satellite passes. Since the attitude control is mainly based on the magnetometer output, being able to determine its biases can substantially improve the performance of the control system. For this purpose, in this paper we present an estimation of the Residual Magnetic Dipole Bias RMDB for its possible consideration in the correction of the attitude control algorithm. Additionally, we note that the RMDB appears to be greatly altered during the activation of the transmitter. This is supported by the evidence of a strong bias in the attitude data downloaded from the satellite during transmission events. The origin of this effect may be traced down to the high currents needed by this sub-system, which is one of the most power-demanding of the entire satellite. By comparing the RMDB value when the transmitter is active to that when it is non-active, we extrapolate the effect of the transmitter dipole alone. Hence, we will refer to the generated dipole with the term transmitter magnetic dipole bias (TMDB). In order to determine the effect on the magnetometer readings of the RMDB and thus of the TMDB on POPSAT, we develop an algorithm that takes advantage of a differential evolution (DE) algorithm coupled with a direct search method; specifically a genetic algorithm and the simplex method. Contrary to many of the cited, our approach does not take into account the dynamics of the satellite, thus not needing attitude computation. The determination of the RMDB and TMDB allows compensating the disturbances in the magnetometer readings, thus leading to a better magnetic model of the spacecraft, which can then be coupled to one of the well-established KF technique, in a feed-forward loop. Especially in the case of transmission events, the attitude control system could easily take advantage of the TMDB value to counteract, in real-time, the moment caused by the active transmitter sub-system, thus reducing the need for the control-loop to stabilize. This reasoning can be extended to virtually every sub-system in the spacecraft. In Section 2 the methodology is outlined, covering the model, the parameters used in the analysis and providing the validation. In Section 3 the experimental results are reported, and the actual analysis is performed and discussed. Finally in the Conclusion we summarize the work, stress the strong points of the method and provide insight in future practical improvements and applications. 2 Methodology Let us define the local 3D frame of reference π πΏππΆ = [ππΏππΆ , ππΏππΆ , ππΏππΆ ], with ππΏππΆ , ππΏππΆ , ππΏππΆ ∈ β3 , as fixed to the frame of the satellite, and centred in the magnetometer location; please consider Fig. 1 as reference. Furthermore, let us define the Earth Centred Inertial (π πΈπΆπΌ ) 3D frame of reference; this is centred in the Earth barycentre, with its x-axis lying in the direction of the vernal equinox and the z-axis oriented along the rotation axis. We then define another frame of reference, the Local Centred Inertial (π πΏπΆπΌ ), which is the translation of π πΈπΆπΌ in the origin of π πΏππΆ . The rotational transformation between the frames of reference π πΏππΆ and π πΏπΆπΌ is given by the attitude quaternion πππ‘π‘ , as described in [8,9]. If a general vector πΌπΏππΆ ∈ βπ is defined in π πΏππΆ , then the same vector in the πΏπΆπΌ frame of reference is given by the following, ∗ πΌπΏπΆπΌ = πππ‘π‘ πΌπΏππΆ πππ‘π‘ , (1) ∗ where πππ‘π‘ is the conjugate of πππ‘π‘ . The inverse operation is not so straightforward; finding the attitude quaternion can prove difficult, since, given the two vectors πΌπΏπΆπΌ and πΌπΏππΆ , one can find an infinite number of quaternions πππ‘π‘ that hold Eq. 1 as true. In order to eliminate this uncertainty, another vector π½πΏππΆ ∈ βπ should be considered, along with its counterpart π½πΏπΆπΌ ; the following ensues, IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 2 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI πΌπΏπΆπΌ π½πΏπΆπΌ { πΌπΏππΆ × π½πΏππΆ πΌπΏπΆπΌ × π½πΏπΆπΌ 27 JANUARY 2016 = π∗ππ‘π‘ πΌπΏππΆ πππ‘π‘ = π∗ππ‘π‘ π½πΏππΆ πππ‘π‘ , ≠0 ≠0 (2) that is, for each and every pair of vectors πΌ and π½ which are not co-linear, only one quaternion πππ‘π‘ exists which holds to Eq. 2. The determination of this quaternion is carried out by Singular Value Decomposition (SVD), as described in [10]. This leads to the following, πΌπΏππΆ , πΌπΏπΆπΌ , π½πΏππΆ , π½πΏπΆπΌ → πππ· πππ‘π‘ , (3) which is univocal when, πΌπΏππΆ β π½πΏππΆ = πΌπΏπΆπΌ β π½πΏπΆπΌ . (4) Fig. 1. Main definitions of the frame of references and vectors. In a) the π πΈπΆπΌ and π πΏπΆπΌ frames of reference are shown, along with the origin πΆπΈπΆπΌ , and the position π·πΈπΆπΌ of the satellite. In b) the π πΏππΆ and π πΏπΆπΌ frames of reference are shown, along with the magnetic field vectors as measured in the POPSAT local frame of reference. The origin of the axis coincides with the magnetometer. These concepts can be applied to the problem of attitude determination of a satellite, when at least a pair of vectors can be defined in π πΏππΆ and π πΏπΆπΌ . In our case, as stated in Section 1, two 3-axial sensors are available, a magnetometer, and a solar-incidence sensor; these provide two vectors, relative to π πΏππΆ , that is, the raw – or measured – magnetic field vector π©′πΏππΆ (π‘), and the solar incidence vector πΊπΏππΆ (π‘). The dependence from time π‘ is due to the fact that the satellite moves and tumbles following a path π (which is called its orbit) thus continually changing both its orientation and position relative to the Earth’s magnetic field and the Sun. Let us indicate with π©π,πΏππΆ (π‘) a variable disturbance vector which also contains the RMDB; in fact, in our work, we assume that the time-invariant portion of this disturbance is indeed coincident to the RMDB. We can then define the pure magnetic field reading π©πΏππΆ as follows, π©πΏππΆ (π‘) = π©′πΏππΆ (π‘) − π©π,πΏππΆ (π‘). (5) In order to define the correspondent vectors in the π πΏπΆπΌ frame of reference, the position of the satellite must be determined; the SGP4 orbital propagation algorithm [11] is used; the necessary two-line elements (TLE) relative to the POPSAT nanosatellite are retrieved through the database of the STK software from AGI Inc. (http://www.agi.com) built from data provided by the NORAD. The relation follows, π‘, ππΏπΈπππππ΄π → ππΊπ4 π·πΈπΆπΌ (π‘), (6) The magnetic field vector π©πΏπΆπΌ (π‘, π·πΈπΆπΌ (π‘)) is time-dependent, the same being true for the solar incidence vector πΊπΏπΆπΌ (π‘, π·πΈπΆπΌ (π‘)) = π·ππ’π,πΈπΆπΌ (π‘) − π·πΈπΆπΌ (π‘). The value of the magnetic field π©πΏπΆπΌ is computed using the International Geomagnetic Reference Field (IGRF) model [12], whereas the geocentric sun vector π·ππ’π,πΈπΆπΌ is determined from the precise solar ephemeris as given by Bretagnon [13]. Let us apply the SVD method, described by Eq. 3, in the real world, as follows, ΜπΏππΆ , πΊ ΜπΏπΆπΌ → Μ πΏππΆ , π© Μ πΏπΆπΌ , πΊ π© πππ· πππ‘π‘ , IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA (7) 3 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 where the vectors are all normalized. In this case the condition in Eq. 4 is generally not valid, due to a certain deviation that exists between the two pairs of vectors in the different frames of reference. This is indeed considered by Eq. 5. The SVD algorithm copes well with uncertainties of this type. Suppose, at this point, that an estimated disturbance π©∗π,πΏππΆ (π‘) is computed and subtracted from π©′πΏππΆ (π‘), so as to have π©∗πΏππΆ (π‘) = π©′πΏππΆ (π‘) − π©∗π,πΏππΆ (π‘). (8) By considering Eq. 5, one can realize that the following is true, π©∗π,πΏππΆ (π‘) ≅ π©π,πΏππΆ (π‘) βΉ π©∗πΏππΆ (π‘) ≅ π©πΏππΆ (π‘). (9) An extension is then made, in form of the following general assumption, Μ π,πΏππΆ = ππππ π‘ π©π,πΏππΆ (π‘) β π© . ∗ Μ ∗π,πΏππΆ = ππππ π‘ π©π,πΏππΆ (π‘) β π© (10) This is made to account for a disturbance that is predicted to be constant over-time, as the RMDB (or at least a substantial Μ ∗π,πΏππΆ is considered. part of it) generally is. A correspondent constant estimate π© If Eq. 10 holds, then a set π can be built, with π‘π = π‘1 , … , π‘π ∈ π for which the model described in the Equations 5-10, holds. π generates a set of different configurations β of the satellite, which are defined by the attitude quaternions πππ‘π‘, (π‘π ). Μ ∗π,πΏππΆ , common to all the elements of β, can be considered as a minimization problem. In order to The determination of π© solve it, a numerical minimization technique can be used, such as a DE algorithm. Note that for the solution to converge, the configurations β must be well distributed in the rotational sense; indeed, this allows for a good definition of the topology of the vectors. Finally, let us consider two distinct sets, βπ‘π₯ππΉπΉ and βπ‘π₯ππ , the first with an idling transmitter, and the second with continuous transmission. Since the transmitter is a major source of electromagnetic disturbance, its influence in the Μ ∗π,πΏππΆ value for the two sets. If magnetometer readings is non-negligible. This results in the determination of a different π© we indicate this with the appropriate subscripts, we have that the TMDB is, Μ ∗π‘π₯,πΏππΆ = π© Μ ∗π,πΏππΆ,π‘π₯ππ − π© Μ ∗π,πΏππΆ,π‘π₯ππΉπΉ . π© 2.1 (11) Genetic Algorithm Μ π,πΏππΆ is constant over time (Eq. 10) then the solution to the If we work under the hypothesis that the disturbance π© ∗ problem of estimating the π©π,πΏππΆ is a minimization problem over a certain time interval π‘ = 0, … , π. The time domain can be discretized in π‘π = π‘1 , … π‘π with π‘1 = 0 and π‘π = π. Following the right-hand term of Eq. 9, the objective function can be defined in general terms as, π π = ∫0 βπ©∗πΏππΆ (π‘) − π©πΏππΆ (π‘)β ππ‘ π Μ π,πΏππΆ − π©πΏππΆ (π‘)β ππ‘ . = ∫0 βπ©′πΏππΆ (π‘) − π© π ∗ ′ Μ π,πΏππΆ − π©πΏππΆ (π‘π )β⁄π) ≅ ∑π (βπ©πΏππΆ (π‘π ) − π© (12) However, since the term π©πΏππΆ (π‘) is unknown, and since its computation would require solving from π©πΏπΆπΌ an implicit problem given by Eq. 5 and 7, an alternative, explicit formulation of the objective function, is as follows, πΜ π ∗ (π‘)β = ∫0 (βπ©πΏππΆ − βπ©πΏπΆπΌ (π‘)β) ππ‘ π Μ π,πΏππΆ β − βπ©πΏπΆπΌ (π‘)β) ππ‘ = ∫0 (βπ©′πΏππΆ (π‘) − π© . (13) Μ ∗π,πΏππΆ β − βπ©πΏπΆπΌ (π‘π )β)/π ) ≅ ∑ππ ((βπ©′πΏππΆ (π‘π ) − π© This, contrary to Eq. 13, considers the scalar difference between the nominal vector π©πΏπΆπΌ (given by IGRF) and the Μ ∗π,πΏππΆ . The remarkable advantage of this magnetometer readings π©′πΏππΆ , purified from the estimated disturbance vector π© approach is the fact that no attitude computation is necessary, since all the terms in Eq. 12 are readily available or require only minor computations, in particular Eq. 6 and the IGRF model. Furthermore, because πππ‘π‘ is unnecessary, from Eq. 7 IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 4 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 one can appreciate that this methodology does not require the knowledge of the solar vectors πΊπΏπΆπΌ and πΊπΏππΆ , allowing this to work with the magnetometer-derived data alone. Finally, the minimization problem statement can be written as, πππππππ§π Μ ∗π,πΏππΆ π© Μ ∗π,πΏππΆ , π©πΏπΆπΌ ) πΜ(π©′πΏππΆ , π© . (14) In order to solve Eq. 14, we employ the mono-objective Genetic Algorithm (GA) described in [14-16], which we couple with a Simplex algorithm [17] to refine the solution. The parameters used are summarized in Table I. TABLE I GENETIC ALGORITHM PARAMETERS Parameter or method Value or type Selection method Crossover method Initial population creation method Mutation function Crossover fraction Elites Fitness relative improvement limit Population size Population type Stochastic uniform Heuristic Uniform distribution Gaussian 0.8 2 10−6 over 500 generations 50 Double The Simplex algorithm convergence criterion is a relative improvement limit of 10−6 . 2.2 Validation Method In order to validate the methodology presented in Sec. 2 and Sub-sec. 2.1 we construct an ad-hoc situation for which all the data relative to the magnetometer readings π©′πΏππΆ , the IGRF reference value π©πΏπΆπΌ and, more importantly, to the disturbance vector π©π,πΏππΆ (π‘) are known. Additionally, we superimpose on the readings a random noise error, to account for magnetic pollution. Operatively, the first step is the definition of a realistic random orbital path ππππ and a corresponding attitude sequence βπππ defined by the attitude quaternions πππ‘π‘,πππ . A disturbance vector is then defined as follows, Μ π,πΏππΆ,πππ + πΉπππ (π‘), π©π,πΏππΆ,πππ (π‘) = π© (15) Μ π,πΏππΆ,πππ corresponds to π© Μ π,πΏππΆ , defined in Eq. 10, and πΉπππ (π‘) = (ππ₯ (π‘), ππ¦ (π‘), ππ§ (π‘)) is a random noise, where Where, π© its components ππ₯,π¦,π§ are random scalar values for which the following is true, Μ π,πΏππΆ,πππ β, +πβπ© Μ π,πΏππΆ,πππ β] , ππ₯,π¦,π§ ∈ [−πβπ© (16) where π ∈ β+ is a time-invariant coefficient that gives control over the average magnitude of the imposed noise. Note that πΉπππ (π‘) is not time-invariant, since the components ππ₯,π¦,π§ are generated at each time-step π‘. Finally, the π©′πΏππΆ value is computed as follows, π©′πΏππΆ = π∗ππ‘π‘ π©πΏπΆπΌ πππ‘π‘ + π©π,πΏππΆ,πππ . (17) Having defined all the variables that come into play, we can exploit the GA described in Sec. 2.1 to solve the Μ ∗π,πΏππΆ . minimization problem formalized in Eq. 14, and compute the value of π© Μ ∗π,πΏππΆ and the a priori defined value π© Μ π,πΏππΆ,πππ . The validation consists in the comparison between the estimated value π© The methodology can be considered accurate when the difference between the two vectors is comparably small; to this purpose the following definitions for this discrepancy are given, π Δ% Μ π,πΏππΆ,πππ β π© Μ ∗π,πΏππΆ /(βπ© Μ π,πΏππΆ,πππ ββπ© Μ ∗π,πΏππΆ β)) = acos (π© = Μ π,πΏππΆ,πππ β−βπ© Μ ∗π,πΏππΆ β| 100|βπ© Μ π,πΏππΆ,πππ β βπ© , IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA (17) 5 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 where π is the angle between the two vectors, and Δ is the difference (defined positive) of the norms. 2.3 Validation Results A set of runs of the method described in Sec. 2.2 were carried out in order to provide an insight on the accuracy of the methodology described in Sec. 2 and Sub-sec. 2.1. The validation was organized as illustrated in Table II. Μ π,πΏππΆ,πππ components π© [ππ] x y z +0.2 +1.0 -0.6 +0.9 -1.0 +0.0 -0.1 +0.9 +1.0 -0.4 -0.2 +0.3 +0.3 +0.4 -0.1 π [−] 0.1 +0.2 +0.9 -0.1 -0.4 +0.3 +1.0 -1.0 +0.9 -0.2 +0.4 -0.6 +0.0 +0.1 +0.3 -0.1 0.5 +0.2 +0.9 -0.1 -0.4 +0.3 +1.0 -1.0 +0.9 -0.2 +0.4 -0.6 +0.0 +0.1 +0.3 -0.1 2.0 TABLE II VALIDATION RESULTS Μ ∗π,πΏππΆ components π© min(πΜ) [ππ] [ππ] x y z 1591.61 +0.201 +1.001 -0.607 2011.02 +0.880 -0.999 +0.062 2120.26 -0.110 +0.894 +1.019 844.86 -0.402 -0.200 +0.315 686.86 +0.299 +0.397 -0.097 Average: 6611.20 +0.176 +1.056 -0.424 8098.04 +0.906 -0.911 +0.163 7396.17 -0.117 +0.951 +1.164 3069.32 -0.443 -0.173 +0.394 3027.35 +0.282 +0.410 -0.048 Average: 36368.55 +0.179 +1.058 -0.582 42207.47 +0.909 -0.865 +0.073 41712.39 -0.214 +0.877 +0.870 11927.65 -0.320 +0.022 +0.503 12046.23 +0.292 +0.518 -0.007 Average: π Δ% [°] [ππ] 0.281 2.753 0.830 1.163 0.224 1.050 8.992 7.775 2.747 7.182 6.270 6.593 2.482 5.538 6.444 31.288 12.966 11.744 0.489 1.244 1.111 0.984 0.400 0.846 3.189 5.019 15.880 7.953 0.986 6.605 3.718 8.903 9.522 5.755 8.438 7.267 Μ π,πΏππΆ,πππ were defined; for each, 3 levels of noise π were applied. The π and Δ% value were A set of 5 different π© calculated for each experimental set. It is immediately apparent that the methodology performs well for a noise coefficient value of π = 0.1, with an error of alignment with a mean value of 1.05°, and an average magnitude error of 0.85%. The performance at higher values of noise (π = 0.5 and π = 2) tends to reach a plateau for what concerns the magnitude error, with a mean magnitude error around 6.6% and 7.3%, respectively. Regarding the deviation, we have values of 6.6° and 11.7°, respectively, which seems appropriate, given the large uncertainty given by the higher π. To summarize the analysis given above, it is apparent that the methodology is consistent and accurate, when white noisepolluted data is fed to the algorithm. This is to be expected since, in general, the genetic algorithm works on mean values, as Eq. 13 clearly shows; white noise tends thus to be eliminated. 3 Results and Discussion The methodology presented in Section 2 was applied to the real-world case scenario represented by the artificial nanosatellite POPSAT-HIP1, which is described in the Introduction. Our team was able to acquire, from the currently orbiting spacecraft telemetry, a total of 18 datasets for the sun incidence sensor and magnetometer, each set being relative to a specific epoch during the lifetime of the craft. A summary of these is visible in TABLE III. The data ranges from the 24th November 2014 to the 23rd February 2015. IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 6 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 TABLE III DATASETS SUMMARY Number of data points Transmitter Transmitter y m d Total M+S OFF ON 1 2014 11 24 Tumb. 61 61 55 6 2 2014 11 25 Tumb. 66 42 66 — 3 2014 11 26 Prop. 57 57 55 2 4 2014 12 3 Tumb. 64 42 64 — 5 2014 12 7 Tumb. 65 43 65 — 6 2014 12 8 Prop. 57 57 53 4 7 2014 12 16 Prop. 48 48 44 4 8 2015 1 6 Prop. 60 60 55 5 9 2015 1 19 Stab. 59 59 59 — 10 2015 1 20 Tumb. 60 — 60 — 11 2015 2 8 Tumb. 60 60 51 9 12 2015 2 17 Prop. 51 51 46 5 13 2015 2 18 Prop. 60 60 60 — 14 2015 2 19 Prop. 60 60 59 1 15 2015 2 20 Prop. 61 61 54 7 16 2015 2 21 Prop. 44 44 44 — 17 2015 2 22 Prop. 69 69 69 — 18 2015 2 23 Prop. 49 49 49 — Datasets for the experiment on POPSAT-HIP1. A dataset identifier is provided in the first column; the “status” column specifies whether the satellite is in free tumbling mode (Tumb.), is performing a maneuver with its thrusters (Prop.) or is stabilized by means of its magnetorquers (Stab.). The last four columns are relative to the datasets size; specifically, the “M+S” column lists, for each dataset, the number of points that provide information both on the magnetometer and the sun incidence sensor. The last two columns regard the number of points collected with the transmitter in idle, and active, respectively. Dataset ID Date Status For this experiment, as illustrated in detail in Section 2.1, only the data from the magnetometer is used; the sun incidence sensor data is discarded. From the Table we can see that, though the number of points with the transmitter idle is quite high (58 points on average), the active transmitter datasets are small (4.8 on average) if present at all. Μ ∗π,πΏππΆ computation results are illustrated and discussed. Emphasis is given to the analysis of stray In the following, the π© Μ ∗π,πΏππΆ vectors which present a very different value with respect to the general trend. Finally, the computed vectors, i.e. π© ∗ π©π‘π₯,πΏππΆ is computed and discussed. 3.1 Μ ∗π ,π³πΆπͺ and TMDB Vectors Computed π© Μ ∗π,πΏππΆ , the data-points relative to the actively transmitting In order to have a clean dataset for the determination of the π© Μ ∗π,πΏππΆ vectors are spacecraft, are pruned; a thorough analysis of the data shows that, with specific datasets, stray π© computed. This is clearly visible in Fig. 2, where these vectors are present mainly in the active transmitter vectors (blue). Μ ∗π,πΏππΆ and TMDB vectors. The π© Μ ∗π,πΏππΆ vectors as computed using the methodology described in Section 2 are indicated by the Fig. 2. Complete set of π© “TxN” expression (red), which stands for the transmitter idle mode; the vectors relative to the transmitter dipole being active are indicated with “TxY” (blue). All numeric values are in nT. IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 7 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 On the other hand, a pair of clusters of vectors can be discerned with some clarity in the same figure, one for the idle transmitter and one for the active one. The TMDBs, which are shown in Fig. 2, present a rather large number of stray vectors, namely ID#1, 3, 7, 8, 14. However, these are partly due to the poor definition of the relevant datasets, as can be seen from TABLE III. The vectors from the idle transmitter datasets have strong coherence, with the exception of ID#1, as is immediately visible from Fig. 2, despite its dataset being extensive (55 data-points); this can be explained by looking at Fig. 3a and b. In general, Fig. 3 illustrates the measured magnetic field vector π©′πΏππΆ during the orbital path and tumbling motion of the satellite. Dataset ID#1, which is in fact shown in Fig. 3a, displays a “path” of limited extent (roughly β of the sphere surface), in the rotational sense (see Section 2). This, combined with the naturally present background measurementΜ ∗π,πΏππΆ noise, leads naturally to a certain degree of indetermination for the problem, which, in turn, translates in a stray π© vector; one can compare this to the vector path in Fig. 3b, pertaining to ID#13, which presents a path which covers a large part of the sphere. Along the same line, the TMDB vectors ID#1, 3, 4, 7, 14 have this problem as well, which corroborates the general thesis; please refer to Fig. 3c and d, relative to ID#7 and ID#15, this last given as a comparison. Fig. 3. Measured magnetic field vector shown in the LOC frame of reference for a subset of datasets. All values are normalized on the IGRF value, shown in the figure as a dark blue sphere. Having defined a selection rationale, the vector sets are pruned of the incorrect entries, which are the following: ID#1, 3, 4, 7, 8, 14 for the active transmitter, and ID#1 for the idle one. By intersecting the sets and using Eq. 11, the TMDB Μ ∗π‘π₯,πΏππΆ is computed. This is illustrated in Fig. 4b, where the transmitter dipole vectors for datasets ID#6, 11, 12 (the only π© ones that fulfil all the requirements) are shown. Numerical results are shown in TABLE IV. Μ ∗π,πΏππΆ and TMDB. In a) the π© Μ ∗π,πΏππΆ vector clusters can be seen for the idle and transmitting transmitter; in b) the resulting TMDB can Fig. 4. Results for π© be seen. All numeric values are in nT. IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 8 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 TABLE IV RESULTS Vector components (Cartesian) Orientation error Vector Transmitter x y z Transmitter Deviation [°] Mean 0.1346 0.0307 -0.0832 OFF Mean 3.6314 STD 0.0174 0.0079 0.0081 OFF Μ ∗π,πΏππΆ π© Mean 0.0955 0.0574 -0.0546 STD 2.5731 ON STD 0.0120 0.0154 0.0142 Mean 6.1558 ON Mean -0.0365 0.0225 0.0289 Μ ∗π‘π₯,πΏππΆ — π© STD 0.0149 0.0032 0.0046 STD 4.5152 Vector components (polar) Module error Transmitter azimuth elevation module Transmitter Error [%] Mean 0.2233 -0.5457 0.1616 OFF Mean 6.79% STD 0.0481 0.0678 0.0166 OFF Μ ∗π,πΏππΆ π© Mean 0.5390 -0.4485 0.1250 STD 7.51% ON STD 0.1431 0.0826 0.0155 Mean 8.34% ON Mean 2.5542 0.6161 0.0528 Μ ∗π‘π₯,πΏππΆ — π© STD 0.1602 0.2396 0.0089 STD 7.09% Final results are illustrated. On the left side, the mean vectors are reported in Cartesian and polar coordinates, along with the standard deviation (STD) of its component. On the right side, the mean errors are shown, both for the orientation and the module. The orientation error is defined as the angle in degrees between the mean vector and the considered vector, whereas the module error is the relative error of their modules. 3.2 Discussion Μ ∗π,πΏππΆ and TMDB π© Μ ∗πππ‘,πΏππΆ vectors were presented in Section 3.1. Following a The results of the determination of the π© systematic approach, a pruning is made to discard the datasets which do not meet the necessary vectorial topology requirements; this leads to a highly consistent group of vectors, representing the RMDB and TMDB. Μ ∗π,πΏππΆ , by looking at Fig. 4a and by referring to TABLE IV, one can see that there indeed exists a pair of Regarding the π© distinct vector clusters, one for each transmitter status. Amongst each cluster, the vectors show remarkable coherence, with an orientation error between 3.6° and 6.2°, and a module error around 7%. Furthermore, as reported in the table, the STD of the vector components (both Cartesian and polar) is comparably low. All these values are similar to those found in the validation phase, described in Section 2.3, which is a clear indication that supports the results. In accordance to the Μ ∗π,πΏππΆ is indeed previously stated assumption that the RMDB tends to be constant, we can infer that the computed π© correspondent. Μ ∗π,πΏππΆ,π‘π₯ππ and π© Μ ∗π,πΏππΆ,π‘π₯ππΉπΉ , which can be computed to be Let us consider the angle πΎ between the mean vectors π© approximately πΎ = 16.7°. Given that the STD of the orientation error is 2.6° and 4.5° respectively for the idle and active transmitter vectors, which are substantially lower values than the angle πΎ, it can be concluded, with adequate accuracy, that there is a non-negligible and consistent statistical difference between the vector clusters. This can be attributed with Μ ∗π‘π₯,πΏππΆ . We can see that, both from Fig. 4b and TABLE IV, the variation, sufficient certainty to the TMDB vector π© indicated by the STD value, is relatively low for this vector, a fact which strengthens our thesis. In general, it is fair to note that both the breadth of the datasets we acquired, as well as the accuracy of each measurement, cannot be considered on par with the state-of-the-art. This has practical reasons related to the small buffer in the POPSAT-HIP1 satellite (ca. 60 points), as well as in the transmitter status tracking, which was not originally provided and had to be extrapolated. Despite this, the general trend, as well as the comparable low dispersion of the results, seems to strongly support the methodology we have here outlined. All things considered, in order to take full advantage of the methodology, a large number of data-points should be acquired for the active transmitter, to match the number of points taken for the idle status. Furthermore, precise tracking and determination of the transmitter system status is advisable. Furthermore, a necessary condition is that, during the measurements of the magnetic field, the satellite is made to cover as many orientations as possible, covering all the rotational sphere. Conclusion In this paper we present a methodology based on a differential evolution (DE) algorithm to perform an in-orbit estimate of the residual magnetic dipole bias (RMDB) of the artificial satellite POPSAT-HIP1 from the magnetometer readings alone. The rationale for this investigation comes from the need to provide efficient attitude control to nanosatellites; accurately determining the principal constant disturbances (or biases) can greatly increase the effectiveness of the control system. Since one of the largest disturbances to these readings is likely given by the transmitter and its sub-systems, we then apply the methodology to extrapolate the time-invariant part of this disturbance, which we refer to as transmitter IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 9 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 magnetic dipole bias (TMDB). The methodology is validated using ad-hoc data. The formalism associated to the algorithm is defined with the intention of being as general as possible; this translates in the strong point of being able to work regardless of the nature or origin of the bias. An experimental investigation is carried out by acquiring a total of 18 datasets during various phases of the spacecraft life (stabilization, maneuvering, free tumbling), each dataset consisting of magnetometer and sun incidence sensor readings. The sun incidence sensor is used for the determination of the satellite attitude, which is necessary for validation. The experimental results for the RMDB are shown to be coherent with the expected accuracy, with an orientation error between 3.6° and 6.2°, and a module error around 7%, while the TMDB vector cluster shows a general common trend, though the quantity of computed vectors is too small to provide a statistical value of significance. This being said, while the methodology in general is proven to be sound, some steps were defined to better the overall accuracy, namely a precise temporal tracking of the transmitter sub-systems, and acquisition of datasets with sufficient rotational covering. Moreover, a complete laboratory-based experimental campaign to measure the actual bias is planned for the next iteration of the nanosatellite. This would allow for a final validation of the algorithm. References [1] J. Li, M. Post, T. Wright, R. Lee, Design of attitude control systems for CubeSat-class nanosatellite, Journal of Control Science and Engineering (2013) 657182 [2] M. Farahanifar, N. Assadian, Integrated magnetometer-horizon sensor low-earth orbit determination using UKF, Acta Astronautica 106 (2015) 13-23 [3] T. Inamori, N. Sako, S. Nakasuka, Magnetic dipole moment estimation and compensation for an accurate attitude control in nano-satellite missions, Acta Astronautica 68 (2011) 2038–2046 [4] D. Gebre-Egziabher, G. Elkaim, J. David Powell, and B. Parkinson. Calibration of Strapdown Magnetometers in Magnetic Field Domain, Journal of Aerospace Engineering 19 (2006) 87-102 [5] Z. Wu, Y. Wu, X. Hu, M. Wu, Calibration of Three-Axis Magnetometer Using Stretching Particle Swarm Optimization Algorithm, Journal of Aerospace Engineering 62 (2013) 281-292 [6] J.C. Springmann, J.W. Cutler, and H. Bahcivanz. Magnetic sensor calibration and residual dipole characterization for application to nanosatellites, AIAA/AAS Astrodynamics Specialist Conference (2010) 97626 [7] L. Vaccari, M. Altissimo, E. Di Fabrizio, F. De Grandis, G. Manzoni, F. Santoni, F. Graziani, A. Gerardino, F. Perennes, and P. Miotti. Design and prototyping of a micropropulsion system for microsatellites attitude control and orbit correction, Journal of Vacuum Science and Technology B: Microelectronics and Nanometer Structures 20 (2002) 2793-2797. [8] F.L. Markley, Parameterization of the Attitude, in: J.R. Wertz (Ed.), Spacecraft Attitude Determination and Control, D. Reidel Publishing Company, Dordrecht, Holland, 2002, pp. 414-416 [9] L. Fallon, Quaternions, in: J.R. Wertz (Ed.), Spacecraft Attitude Determination and Control, D. Reidel Publishing Company, Dordrecht, Holland, 2002, pp. 758-759 [10] G. Strang, Linear Algebra and Its Applications, 2nd ed., Academic Press, New York, (1980) 142 [11] T.S. Kelso, Validation of SGP4 and IS-GPS-200D against GPS precision ephemerides, Advances in the Astronautical Sciences 127 (2007) pp. 427-440 [12] C.C. Finlay, S. Maus, C.D. Beggan, T.N. Bondar, A. Chambodut, T.A. Chernova, A. Chulliat, V.P. Golovkov, B. Hamilton, M. Hamoudi, R. Holme, G. Hulot, W. Kuang, B. Langlais, V. Lesur, F.J. Lowes, H. Lühr, S. Macmillan, M. Mandea, S. McLean, C. Manoj, M. Menvielle, I. Michaelis, N. Olsen, J. Rauberg, M. Rother, T.J. Sabaka, A. Tangborn, L. Tøffner-Clausen, R. Thébault, A.W.P. Thomson, I. Wardinski, Z. Wei, and T.I. Zvereva. International Geomagnetic Reference Field: The eleventh generation, Geophysical Journal International 183 (2010) 1216-1230 [13] P. Bretagnon, Planetary Programs and Tables from -4000 to +2800, Willmann-Bell (1986) [14] D.E. Goldberg, Genetic Algorithms in Search, Optimization & Machine Learning, Addison-Wesley (1989) [15] A.R. Conn, N.I.M. Gould, and P.L. Toint, A Globally Convergent Augmented Lagrangian Algorithm for Optimization with General Constraints and Simple Bounds, SIAM Journal on Numerical Analysis 28 (1991) 545–572 IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 10 S. SERIANI, Y.L. BRAMA, P. GALLINA, G. MANZONI 27 JANUARY 2016 [16] A.R. Conn, N.I.M. Gould, and P.L. Toint, A Globally Convergent Augmented Lagrangian Barrier Algorithm for Optimization with General Inequality Constraints and Simple Bounds, Mathematics of Computation 66 (1997) 261–288 [17] Lagarias, J. C., J. A. Reeds, M. H. Wright, and P. E. Wright. Convergence Properties of the Nelder-Mead Simplex Method in Low Dimensions, SIAM Journal of Optimization 9 (1998) 112–147 IN-ORBIT OFFLINE ESTIMATION OF THE RESIDUAL AND TRANSMITTER MAGNETIC DIPOLE BIASES OF THE POPSAT-HIP1 NANOSATELLITE ACTA ASTRONAUTICA 11