Several metrology systems have been implemented in order to keep the formation-flying configuration. Among them, the Shadow Position Sensors (SPSs) assembly. The SPSs are designed to verify the sun-pointing alignment between the Coronagraph pupil entrance centre and the umbra cone generated by the Occulter Disk. The accurate alignment between the spacecrafts is required for observations of the solar corona as much close to the limb as 1.05 RΘ.The metrological system based on the SPSs is composed of two sets of four micro arrays of Silicon Photomultipliers (SiPMs) located on the coronagraph pupil plane and acquiring data related to the intensity of the penumbra illumination level to retrieve the spacecrafts relative position. We developed and tested a dedicated algorithm for retrieving the satellites position with respect to the Sun. Starting from the measurements of the penumbra profile in four different spots and applying a suitable logic, the algorithm evaluates the spacecraft tri-dimensional relative position. In particular, during the observational phase, when the two satellites will be at 150 meters of distance, the algorithm will compute the relative position around the ideal aligned position with an accuracy of 500μm within the lateral plane and 500 mm for the longitudinal measurement. This work describes the formation flying algorithm based on the SPS measurements. In particular, the implementation logic and the formulae are described together with the results of the algorithm testing.
PROBA-3  is a technological European Space Agency mission, with the main purpose of demonstrating the in-orbit flight formation capability. Moreover, to complete the end-to-end validation of the formation flying technology, a solar telescope has been selected as scientific payload. In particular, the ASPIICS    (Association de Satellites Pour l’Imagerie et l’Interférométrie de la Couronne Solaire) coronagraph has been conceived to be split on two different spacecrafts: the Coronagraph Spacecraft (CSC) and the Occulter Spacecraft (OSC). The CSC will host the optical assembly of the coronagraph as primary payload. On the other hand, the OSC will carry the coronagraph external occulter (EO) disk. In nominal formation flying (FF) conditions, the two satellites will form a unique giant 150-meter external occulter coronagraph as a rigid structure.
ASPIICS will be the first space-based solar telescope providing images of the inner part of the solar corona in visible broad and narrow band and in polarized light, from 1.08 R⊙ up to about 3 R⊙. The main scientific objectives of this mission are: to understand the physical processes that govern the quiescent solar corona and that lead the coronal mass ejections (CMEs) formation.
In order to fulfill the FF objective, PROBA-3 mission is characterized by a suite of metrology systems that aims at providing continuous measurements, with a micrometric precision, of the satellites relative position. In particular, the CSC will host the formation flying sensors, while the OSC will perform the data processing. Among the metrology systems, the Shadows Position Sensors (SPS) will be used. The SPS assembly is composed of two sets – nominal and redundant - of four micro arrays of Silicon Photomultipliers (SiPMs) placed on a 55 mm radius circumference centered on the telescope pupil. The SPSs objective is to measure the intensity of the penumbra generated by the OSC at four different points on the coronagraph pupil plane, in order to provide an absolute measurement of the FF configuration. As a matter of fact, the light intensity level measured by each photodiode depends on the effective cross-section of the SPS aperture with respect to the Sun direction.
SPS ALGORITHM DESCRIPTION
The SPS algorithm aims at retrieving the relative position of the two satellites by starting from the unique available information: the measured penumbra light in four different points surrounding the coronagraph pupil. In particular, the algorithm receives the measurements acquired by the photodiodes and returns the position of a reference point, i.e. M, defined as the projection of the geometric centre of the occulter disk, within a plane positioned at the nominal Inter Satellite Distance (ISD) from the OSC and perpendicular to the Sun direction. Therefore, the SPS algorithm provides a set of 3 coordinates: X0, Y0, Z0; that will result equal to 0 when the OSC and the CSC are aligned, and their distance is equal to the nominal ISD, which is defined as the distance between the two satellites that keeps constant the umbra diameter (about 77 mm).
Figure 1 shows the location of the SPS sets within the pupil plane. In particular, SPSs 1, 3, 5 and 7 compose the nominal set, while the other 4 photodiodes are the redundant set.
The allowed pointing errors and required accuracies related to the SPS system are:
- a lateral measurement accuracy of 500μm (3-σ) in each axis;
- a longitudinal measurement accuracy of 50 mm (3-σ).
within +/- 10mm of the ideal position in lateral and +/- 100mm in range.
The developed algorithm is based on an irradiance model  obtained considering that the amount of light reaching a single SPS corresponds to the geometrical area of the fraction of the solar disk, which is not covered by the occulter. Moreover, under the assumptions that the solar disk has a circular shape and the projected occulter umbra is elliptical, it is possible to compute the area not covered by the occulter considering the intersection between a circle and an ellipse. Once that the area is retrieved, it is possible to compute the irradiance distribution by integrated the area and taking into account that: the Sun is not perfectly circular, the occulter projection can vary, the limb darkening effect, the SPS waveband, the spatial filtering due to the pinholes dimensions. Figure 2 shows the modeled penumbra profile used to retrieve and to test the SPS algorithm.
In order to verify the satellites alignment along the Sun direction, two different algorithms have been proposed. The first one, i.e., the differential algorithm, provides a qualitative estimation of the spacecrafts misalignment, based on the difference between the values measured by opposite diodes, as reported in equations (1) (2).
On the other hand, the second proposed algorithm provides a set of three cartesian coordinates. At first, the SPS algorithm computes the lateral position using two different methods, and then the longitudinal position is retrieved.
The first method used to retrieve the M point position within the zy-plane, is based on the relationship between the difference of the irradiance acquired by opposite SPSs and the coordinates of the umbra center. In particular, we found that, for a fixed coordinate axis direction, a linear relationship links the umbra center coordinate to the difference of the measurements performed by the SPS placed along that axis. As it is possible to see from Figure 3, we simulated different occulter positions along the z-axis for a fixed value of y. Then we reported the difference of irradiance acquired by the diodes placed along the z coordinated axis, i.e., SPS 3 and SPS 7. Due to the axial-symmetry of the expected penumbra profile, we will have the same behavior, but inverted, when the occulter occupies positions along the y-axis.
As a result, the computation of the satellite relative position within the lateral plane can be performed using equation (3):
where dz and dy assume the same value when the occulter is assumed perfectly circular.
The second method is based on a third order polynomial equation (“pseudo-paraboloid”) which has been used to fit the penumbra profile. As a first approximation, a relationship between the irradiance value measured by the SPS and the occulter position has been found considering the irradiance curve R (x, y) around the location of the SPS well-approximated with a Nth-order pseudo-paraboloid equation centred at the point (x0, y0), and described by equation (4).
With an ≠ bn coefficients providing the paraboloid oblateness on the (x, y) plane. We found that a third order polynomial fitting is more appropriate to approximate the shape of the irradiance distribution rather than a second order. It is possible to demonstrate that, given the measurements of irradiance in four different points, and then the coordinates of the pseudo paraboloid vertex (x0, y0) can be obtained by solving the system of equations (5).
Each of these equations has three roots (in general on the complex plane), however only one of these is equal to zero when ΔR = 0, as it happens when the pseudo-paraboloid is centered in (x0, y0). Hence, the equation root with this property is the only real solution for (x0, y0).
These formulae provide the absolute measurements for the pseudo-paraboloid vertex (x0, y0) corresponding to the center of the penumbra distribution, hence to the projected location of the occulter.
After several analyses, we found that the error in estimating the M point position could be minimized by considering the mean of the coordinates computed by each algorithm, the linear and the pseudo-paraboloid.
The longitudinal coordinate of the M point is calculated considering equation (8), which has been obtained by fitting the simulated SPS readings for different occulter position along the telescope optical axis.
The main purpose of the algorithm is to compute the spacecraft relative position using the illumination level measurements acquired by the photodiodes. In order to reach this goal with the maximum level of accuracy, the implementation of the algorithm requires some additional checks.
Figure 4 reports the general scheme of the implemented algorithm. In particular, in addition to the algorithm block, where the occulter position computation is performed, a pre-processing and two validity blocks have been implemented. The algorithm input is represented by the SPS measurements and by a set of reconfigurable parameters, useful to compute the occulter position.
The computational flow starts when new measurements are acquired by the SPSs and passed from the electronics to the software. In order to be compliant with the sensitivity requirements, the electronic design consists of two different gain chains: a low (LG) and high (HG) gain . As a result, the SPS readings are processed by both these chains, providing two sets of eight digitalized measurements of the penumbra. Once that these values are ingested, the input pre-processing block selects the measurements to be used by comparing the HG values with a reference threshold. In fact, in low light regime the occulter position is computed starting from the HG output but, when these values are higher than the threshold, then the LG are multiplied by five and used. Moreover, the pre-processing block has to recognize which one of the SPSs set is turned on. In fact, during the nominal operations, in penumbra illumination conditions, only one set is used, i.e. the nominal or the redundant if a failure occurs.
The second block consists of a validity verification performed on the SPS measurements returned by the pre-processing block. This check is necessary to have a first estimation of the computed position validity.
The pre-processed SPS readout are then passed to the algorithm block where the differential and the absolute algorithm run. The first one has been developed in order to provide information about possible misalignments between the two spacecrafts. For this reason, it provides a qualitative output based on the difference of signal acquired by opposite SPSs. On the other hand, the absolute algorithm provides the computed coordinates of the M point.
The last validity check is performed on the computed position, considering the previous computed position and comparing it with the maximum possible displacement between two SPS measurements.
As a result, the metrology algorithm returns, for each set of SPS, a vector containing the M point computed position and the validity flags.
Different codes have been implemented in order to test different features of the developed algorithm. Figure 5 shows the block diagram with the architecture of the code developed for testing the fine metrology algorithm. In particular, the code input consists of a simulated M point position. Starting from this position, it is possible to retrieve the position of each SPS with respect to the simulated penumbra profile and, consequently, the SPS measurement.
To the purpose of testing the developed algorithm, as a first step, it is necessary to simulate the SPS measurements for an assigned occulter position. In fact, in operational conditions, this will be the algorithm input.
For this reason, a proper penumbra model has been created. This matrix represents the digitalized penumbra profile (in digital numbers as return by the electronics) within a space of 130x130 mm, divided in squares of 10x10 μm. The center of this area corresponds to the center of the umbra, which is also the geometrical center of the occulter. Using this model, it is possible to simulate different positions of the occulter within a squared area of ±10mm around the aligned position.
As first test, the error associated to the occulter position computation within the lateral plane at the nominal ISD has been investigated within a box of ± 10mm on the lateral plane. We simulated a sequence of occulter displacements placed at 0.01 mm one from the other in z and y directions in order to retrieve a map of the algorithm error in computing the M point position.
Figure 6 shows the distribution of the error related to the occulter position computation related to the linear and the pseudo-paraboloid algorithms within a space of 20x20mm. As it is possible to observed, in the first case the maximum error is equal to 0.12 mm. On the other hand, when the pseudo-paraboloid fitting curve is used, the maximum error is equal to -0.15 mm.
Figure 7 shows the statistics of the errors maps reported in Figure 6. In order to limit the maximum error in estimated the umbra center position, we decided to compute the mean of the positions retrieved using the linear and the pseudo-paraboloid algorithms.
Figure 8 shows the error map and the statistics associated to the lateral position obtained as the average of the occulter center y-z coordinates computed using the linear and the pseudo-paraboloid algorithm. As it is possible to see, the maximum error is equal to 0.06 mm and the mean error is about -0.012 mm. Therefore, the algorithm outcome results to be improved in terms of accuracy.
Figure 9 shows the error map and the statistics associated to the M point position along the x axis. The maximum error of the algorithm in estimating the longitudinal position is equal to 4 mm and the mean value is about 1.22 mm.
This paper reports the description and verification of an algorithm developed in order to retrieve the relative position of the two PROBA-3 spacecrafts from the occulter penumbra measurements. The algorithm is able to evaluate the position on the Occulter Spacecraft (OSC) with respect to the Coronagraph Spacecraft (CSC) with a certain level of confidence employing two different approaches: a linear and a pseudo paraboloid algorithm. The code computes the OSC position using both and retrieve the final position within the lateral plane computing the mean of the obtained results. We verified that the final error associated to the position returned by the algorithm results minimized. Moreover, different check on the output validity have been implemented in order to verify if the returned position is trustworthy.