adcs at scale: calibrating and monitoring the dove

11
SSC18-WKII-03 ADCS at Scale: Calibrating and Monitoring the Dove Constellation Lawrence Leung, Vincent Beukelaers, Simone Chesi, Hyosang Yoon, Daniel S. Walker, Joshua Egbert Planet Labs Inc. 346 9th St, CA 94103; 650-529-4648 [email protected] ABSTRACT The Attitude Determination and Control System (ADCS) is considered one of the most critical subsystems of a spacecraft, and must be carefully calibrated and monitored to ensure mission success. Many emerging small satellite missions feature large constellations, creating a need for new design philosophies and operational approaches to accommodate the management of many ADCS subsystems simultaneously. Planet currently operates approximately 190 Dove Cubesats for Earth Observation, with only a small team of ADCS engineers and satellite operators responsible for the performance of the entire constellation. Since Planet’s first launches in 2013, on-orbit data and diverse experiences have contributed to the evolution of techniques and tools to support a fleet of this size. Today, Planet’s ADCS engineers and operators rely on automated systems to enable on-orbit calibration, nominal operations, performance monitoring, and anomaly detection. The systems are intended to minimize the need for humans-in-the-loop, but where it is required they are designed to enable agile decision making. This paper shares techniques, insights and lessons learned from calibrating and monitoring ADCS subsystems at scale. INTRODUCTION A noticeable trend in the last decade is the emergence of satellite missions featuring large constellations. Well-known recent examples include SpaceX’s pro- posed 4000-plus satellite constellation and OneWeb’s proposed 900-plus satellite constellation, both for space-based Internet. Earth-imaging constellations are typically smaller than those required for Internet but are still larger than (or at least on the same order of magnitude as) existing constellations such as those operated by Iridium or for GPS. Adding to the com- plexity, satellites are typically deployed in batches, sometimes to many orbits, and sometimes consisting of various hardware revisions. Regardless of the mis- sion, the Attitude Determination and Control System (ADCS) is integral to payload operation and overall mission success, and must be treated accordingly. In designing and operating large constellations, mate- rial and human resources can become constrained. To efficiently and effectively manage the ADCS subsys- tems on fleets of these sizes, focus must be placed on speed and agility throughout the spacecraft life-cycle. Pre-launch, this means automating and/or removing tasks where possible, and post-launch this means se- lecting and displaying information that enables quick decision making. As of June 2018, Planet operates the world’s largest satellite constellation and navi- gated these challenges as the fleet grew. Applying a rapid, capabilities-focused, automation-driven design philosophy, Planet built a system that allows a small team to manage a large number of spacecraft. This paper opens with an overview of Planet’s mis- sion, the Dove spacecraft and ADCS subsystem, and approach to satellite operations. The rest of the pa- per is divided according to the three areas Planet’s ADCS engineers believe are necessary for managing this subsystem at scale. The first is a description of an automated on-orbit calibration approach that re- places pre-launch calibration and is designed around frequent replenishment/launches. The second is a re- view of how ADCS engineers at Planet make decisions about subsystem performance quickly by monitoring product driven metrics before component level met- rics. The third is a discussion of support functions that enable the calibration and monitoring activities. THE DOVE CONSTELLATION Mission Description When Planet was founded in 2010, “Mission One” was defined as imaging the entire landmass of the Earth every day. From 2013 onward, Planet launched over Leung 1 32 nd Annual AIAA/USU Conference on Small Satellites

Upload: others

Post on 29-Nov-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

SSC18-WKII-03

ADCS at Scale: Calibrating and Monitoring the Dove Constellation

Lawrence Leung, Vincent Beukelaers, Simone Chesi, Hyosang Yoon, Daniel S. Walker, Joshua EgbertPlanet Labs Inc.

346 9th St, CA 94103; [email protected]

ABSTRACTThe Attitude Determination and Control System (ADCS) is considered one of the most critical subsystemsof a spacecraft, and must be carefully calibrated and monitored to ensure mission success. Many emergingsmall satellite missions feature large constellations, creating a need for new design philosophies andoperational approaches to accommodate the management of many ADCS subsystems simultaneously.Planet currently operates approximately 190 Dove Cubesats for Earth Observation, with only a small teamof ADCS engineers and satellite operators responsible for the performance of the entire constellation. SincePlanet’s first launches in 2013, on-orbit data and diverse experiences have contributed to the evolution oftechniques and tools to support a fleet of this size. Today, Planet’s ADCS engineers and operators relyon automated systems to enable on-orbit calibration, nominal operations, performance monitoring, andanomaly detection. The systems are intended to minimize the need for humans-in-the-loop, but where itis required they are designed to enable agile decision making. This paper shares techniques, insights andlessons learned from calibrating and monitoring ADCS subsystems at scale.

INTRODUCTION

A noticeable trend in the last decade is the emergenceof satellite missions featuring large constellations.Well-known recent examples include SpaceX’s pro-posed 4000-plus satellite constellation and OneWeb’sproposed 900-plus satellite constellation, both forspace-based Internet. Earth-imaging constellationsare typically smaller than those required for Internetbut are still larger than (or at least on the same orderof magnitude as) existing constellations such as thoseoperated by Iridium or for GPS. Adding to the com-plexity, satellites are typically deployed in batches,sometimes to many orbits, and sometimes consistingof various hardware revisions. Regardless of the mis-sion, the Attitude Determination and Control System(ADCS) is integral to payload operation and overallmission success, and must be treated accordingly.

In designing and operating large constellations, mate-rial and human resources can become constrained. Toefficiently and effectively manage the ADCS subsys-tems on fleets of these sizes, focus must be placed onspeed and agility throughout the spacecraft life-cycle.Pre-launch, this means automating and/or removingtasks where possible, and post-launch this means se-lecting and displaying information that enables quickdecision making. As of June 2018, Planet operates

the world’s largest satellite constellation and navi-gated these challenges as the fleet grew. Applying arapid, capabilities-focused, automation-driven designphilosophy, Planet built a system that allows a smallteam to manage a large number of spacecraft.

This paper opens with an overview of Planet’s mis-sion, the Dove spacecraft and ADCS subsystem, andapproach to satellite operations. The rest of the pa-per is divided according to the three areas Planet’sADCS engineers believe are necessary for managingthis subsystem at scale. The first is a description ofan automated on-orbit calibration approach that re-places pre-launch calibration and is designed aroundfrequent replenishment/launches. The second is a re-view of how ADCS engineers at Planet make decisionsabout subsystem performance quickly by monitoringproduct driven metrics before component level met-rics. The third is a discussion of support functionsthat enable the calibration and monitoring activities.

THE DOVE CONSTELLATION

Mission Description

When Planet was founded in 2010, “Mission One” wasdefined as imaging the entire landmass of the Earthevery day. From 2013 onward, Planet launched over

Leung 1 32nd Annual AIAA/USUConference on Small Satellites

280 Dove satellites (representing 13 design iterations)toward achieving this goal. While many of thesesatellites have decayed naturally from their LEO or-bits, as of June 2018, Planet currently operates ap-proximately 190∗ Doves and successfully achievedMission One in November 2017.1,2 Planet is nowworking toward “Mission Two” – applying machinelearning and analytics to imagery to enable users toquery what is on the Earth and build customized in-formation feeds – and will continue to launch satel-lites to replenish the constellation as capabilities im-prove with future Dove iterations.

The Dove Spacecraft and ADCS Subsystem

The Dove, shown in Figure 1, is based on the 3UCubeSat platform. It primarily consists of an opticalpayload with a three-axis stabilized control system.The ADCS subsystem components are listed in Ta-ble 1. For attitude estimation the Dove uses magne-tometers, coarse sun sensors, gyroscopes, a horizonsensor, and a star tracker. For attitude control theDove uses a combination of magnetorquers and re-action wheels. Almost all of the ADCS subsystemand associated algorithms are internally developed,allowing for flexibility and transparency during sys-tem integration and operations.

As an Earth-observation platform, the Imaging Chaindictates the requirements of the Dove ADCS subsys-tem. The optical system is nadir-facing wheneverthe satellite is over land, and the constellation is dis-tributed within an orbit such that it functions as a“line-scanner” for the Earth, where the swath width ofone satellite just overlaps with the previous one at theequator. This configuration imposes requirements onthe boresight pointing performance of the system to

∗constellation size is dependent on orbit lifetime and re-plenishment launches

Figure 1. The Dove spacecraft. Planet currently op-erates approximately 190 Doves to image the entirelandmass of the Earth every day.

Table 1. Dove ADCS Subsystem componentsSensors Magnetometers

Coarse sun sensorsGyroscopesHorizon sensorStar tracker

Actuators MagnetorquersReaction wheels

ensure optimal swath deconfliction. A MonolithicCharge-Coupled Device (CCD) sensor with multi-spectral filters captures images using Time Delay In-tegration (TDI). This necessitates yaw-steering to ac-count for the ground velocity due to Earth’s rotationand thereby imposes requirements on the yaw deter-mination/control performance of the system as wellas stability requirements to minimize motion blur.

Satellite Operations at Planet

Planet’s Mission Operations team is distributed be-tween the US and European offices. This small teamis responsible for maintaining the health of the en-tire Dove constellation, the scope of which includescommissioning, developing tools for anomaly detec-tion/debugging, performing experiments, and up-grading on board software.

A “good” state of health indicates that a spacecraftis capable of carrying out its mission, but it is im-portant to note that this does not necessarily pro-vide information about how well a spacecraft is per-forming its mission.3 Consider a simple examplewhere a satellite consistently returns nominal teleme-try values but telescope alignment is poorly cali-brated, or conversely a satellite which occasionallyexceeds telemetry limit thresholds but consistentlyreturns blur-free imagery of an intended target.

Therefore, maintaining an appropriate balance be-tween health and performance metrics is especiallyimportant when managing a large constellation.Planet’s Mission Operations team works closely withsubsystem teams. Aside from launch, Planet is verti-cally integrated from spacecraft design through deliv-ering analytic products to customers, and this allowsfor efficient collaboration between teams. In the par-ticular case of the ADCS system, Mission Operationsmaintains and reports on the health of the sensorsand actuators, while the ADCS team is responsiblefor performance: that is, keeping the satellites well-calibrated and making sure the overall pointing andstability metrics are met.

Leung 2 32nd Annual AIAA/USUConference on Small Satellites

ADCS CALIBRATION AT SCALE

The calibration of all ADCS systems across the con-stellation is performed on-orbit. This section dis-cusses the motivations behind the choice to calibrateeach Dove in space versus on the ground, describesthe maneuvers that are used, and details the methodby which their execution and analysis is automated.

Table 2 lists the calibration parameters that are cal-culated for each Dove. There are other known sourcesof error in addition to those listed in the table, butit was found from ground testing and on-orbit datathat these factors contributed the most to Dove per-formance.

Motivation for On-Orbit Approach

The magnetometer calibration was performed on theground for Planet’s initial satellites with an engi-neer rotating the spacecraft in a constant magneticfield. While this was manageable for the individ-ual satellites Dove 1 through 4, it proved less prac-tical for Flock 1 (28 spacecraft), particularly be-cause of the difficulties in providing a magneticallyclean/consistent environment and challenges in han-dling integrated spacecraft. Additionally, it wasknown that the solar panel currents influence themagnetometer and it was difficult to capture thoseparameters in a ground-based environment.

The magnetometer is just a single example, but afterthe experiences with Flock 1 the ADCS team adoptedthe approach that parameter estimation across thedesired components would be done on-orbit based onpredefined maneuvers. This was chosen not only be-cause it would save time when manufacturing/testinglarge numbers of spacecraft, but also because theteam believed that calibrating in the true operat-ing environment would yield better performance thancalibrating in the lab if the maneuvers were carefullydesigned and repeatable over a spacecraft’s lifetime.

To enable on-orbit calibration, proper instrumenta-tion of the spacecraft is required. That is, it is im-

Table 2. Dove calibration parametersComponent CalibrationMagnetometers Gain, offset, misalignment, solar

panel fieldsSun sensors Gain, misalignmentGyroscopes Temperature (Gain, offset)Horizon sensor MisalignmentStar tracker Misalignment, optical distortion

portant to identify early in the spacecraft design pro-cess which parameters are to be calibrated in spaceand ensure that appropriate sensors are included thathave the resolution required for calibration.

Two automated maneuvers are used to calibrate theDoves. They are performed in sequential order duringcommissioning, and repeated as necessary through-out each spacecraft’s lifetime.

Calibration Maneuver One

Maneuver and Algorithm Description

A first calibration maneuver is used for estimatingthe magnetometer and sun sensor parameters. Thespacecraft is induced into a random tumble state withthe magnetorquers that persists across multiple sun-light/eclipse periods. This allows the Earth’s mag-netic field and sun vector to be swept through thespacecraft body frame. A well distributed set of cal-ibration data covers most of the body-centered atti-tude sphere, as shown in Figure 2 (uncalibrated ver-sus calibrated magnetometer data is shown). Duringthe tumble, on board devices known to cause distur-bances to the magnetometer are also switched on andoff. By comparing the measured magnetic field andsun vector against the IGRF magnetic field, albedo,and sun models, it is possible to use least squares toprovide an attitude-independent estimate of the cal-ibration parameters.4

Insights and Lessons Learned

For a single Dove, the maneuver has been found toprovide consistent results across multiple calibrationattempts. One of the important characteristics of thismaneuver is the tumbling state. In a first iterationof the on-orbit calibration only nadir-facing pointingmodes were used since this was the primary attitudeduring nominal operations. However, parameters de-termined from the nadir-facing attitude lead to poor

Figure 2. An example of a well distributed calibrationdata set. Uncalibrated vectors are shown on the left,calibrated vectors are shown on the right.

Leung 3 32nd Annual AIAA/USUConference on Small Satellites

determination accuracy in other attitudes, such asthose used differential drag.5 The suspected causewas overfitting of a data set that was not representa-tive of all modes (that is, training data was capturingidiosyncrasies of the nadir-facing attitude such as sunreflections off the spacecraft body into the sun sen-sors).

When applying this maneuver across a constellation,one of the challenges for repeatability was that induc-ing a random tumble did not guarantee that sampleddata points were well distributed in the spacecraftbody frame. One possible approach to this wouldbe to substitute the tumble with controlled point-ing using reaction wheels to sweep the vectors as de-sired, however the body rates achievable with thismethod are limited by the maximum speed of thewheels and could lengthen the duration of the maneu-ver. Planet’s approach to this was to check the dis-tribution of the random tumble data and re-performthe maneuver if necessary, an approach that was pos-sible because of an automated management system(discussed in more detail in a later section).

Calibration Maneuver Two

Maneuver and Algorithm Description

A second calibration maneuver is used for estimationof the star tracker, horizon sensor, and gyroscope pa-rameters. This maneuver takes place over a singleeclipse period.

The roll/pitch/yaw misalignments between the startracker and the main telescope need to be calibratedto ensure boresight pointing accuracy. To do this,the main telescope payload is treated as a secondarystar tracker while simultaneously operating the actualstar tracker. The spacecraft is commanded to imagea target star constellation with the main telescope(using an ECI-fixed attitude). The attitude reportedby the uncalibrated star tracker is used to predictand compare the location of the target stars in themain telescope images, and using a time-series of im-ages the misalignments are estimated that minimizethe difference between predicted and estimated loca-tions. This is shown graphically in Figure 3, whichrepresents the main telescope CCD frame capturinga constellation of five stars. The blue circles are theestimated positions of the stars based on the attitudefrom the uncalibrated star tracker (an entire time-series is plotted, and the settling motion of the space-craft is visible), and the red crosses are the measuredpositions. The algorithm chooses roll/pitch/yaw mis-alignments that aligns the circles and crosses.

Figure 3. Calibration of the misalignment betweenthe main telescope and star tracker by comparing thepredicted and measured postions of stars in the maintelescope CCD images.

In order to calibrate the relative optical distortionpresent in the star tracker lens, a time-series of solvedstar tracker images is used. For each solved image,the attitude quaternion is used to calculate the dif-ference between the captured stars’ centroids (fromthe image) and the expected stars’ centroids (fromthe star catalog). This effectively creates a “checker-board” from which the centroid offset functions canbe determined. There is some debate as to whetherthis calibration should performed on the ground oron-orbit. One advantage is that the calibration cap-tures any impacts of vibrations from launch. One dis-advantage of the described method is that using pointsources such as stars it is not possible to achieve a truecheckerboard covering the entire FOV that would bepossible on the ground. This became a trade betweenprecision and the need for additional ground testequipment/resources, and the Planet ADCS team de-termined that an on-orbit solution was sufficient forthe system to satisfy performance requirements.

The roll/pitch/yaw misalignments between the hori-zon sensor and the main telescope must also be cal-ibrated. As a practical matter, this is calculated af-ter star tracker misalignment and so an equivalentcalculation for the horizon sensor is to calculate itsmisalignment relative to the star tracker. The Dovehorizon sensor reports the nadir vector and the cali-bration is comparable to that of the star tracker mis-alignment. The horizon sensor and star tracker areoperated simultaneously while the spacecraft cyclesbetween predetermined attitudes that re-orient thenadir vector in the horizon sensor FOV. The nadirvector reported by the star tracker (derived from theattitude quaternion) is compared with that reportedby the horizon sensor, and misalignment parametersare estimated through least squares to minimize thedifference between the vectors.

Leung 4 32nd Annual AIAA/USUConference on Small Satellites

The Dove uses MEMs gyroscopes, which are known tohave temperature dependent biases. During the star-pointing and horizon-pointing collections describedabove, the satellite is logging gyroscope rates but thesatellite is cooling because the entire maneuver takesplace over a single eclipse period. Logging the gyro-scope temperatures and taking advantage of the factthat the star tracker is operating continuously duringthe maneuver, the derivative of the attitude solutionsis used to provide a “true” rotation rate as reported bythe star tracker. By comparing the rate measured bythe gyroscopes to the true rotation rate it is possibleto calculate the temperature biases of each axis of thegyroscopes. Applying this across the constellation, itwas found that despite using the same component onevery satellite each chip had different temperaturegains and offsets.

Insights and Lessons Learned

The star imaging approach was developed in responseto some shortcomings of an earlier iteration of thecalibration that relied on the Moon. This involvedcapturing multiple images of the moon centered indifferent parts of the CCD, then similar to the starimaging approach the attitude reported by the uncal-ibrated star tracker was used to predict and comparethe location of the moon in the main telescope im-ages with a Lunar ephemeris. This methodology wassuccessfully applied to Flock 2e/2e’ (32 spacecraft)and Flock 2p (12 spacecraft) but during the com-missioning of the latter there was a New Moon andthe calibration of these satellites had to be delayed.With a constellation of 12 spacecraft the overall delaywas short in duration, but the launch following Flock2p was Flock 3p (88 spacecraft) where the plan wasto commission these satellites in serial batches overa period of 3 months.6 Any delays to batches couldsignificantly increase the overall commissioning dura-tion and complicate planned work flows. By shiftingto using star constellations instead of the Moon, thedependence on launch and commissioning schedulewas removed.

Another shortcoming of the Moon calibration algo-rithm was that without a feature-extraction processfor Lunar features only a single target vector wasavailable (the center of the Moon), and this meantthat the yaw misalignment was poorly constrained.Using star constellations removed this ambiguity be-cause of the presence of multiple target vectors ina single image. All satellites that were calibratedusing the Moon imaging method were subsequentlyrecalibrated using the star imaging method and animprovement in estimation accuracy was observed.

There are several practical considerations when im-plementing a star imaging based calibration. Thefirst thing to note is the requirement for multipleconstellations analyzed and ready for use. Planetoperates spacecraft in multiple orbits and launchesthroughout the year (with launch dates often mov-ing), and so the visibility of any single star constel-lation is never guaranteed. The ADCS team main-tains a list of suitable constellations and before eachlaunch selects which is the most appropriate. Sec-ondly, camera payloads typically have a small fieldof view (FOV) when compared to a traditional startracker, therefore the chosen constellation should bewide enough to fill the FOV plus some margin be-cause the ADCS system is uncalibrated when per-forming this maneuver. In the case of the Doves,the ADCS team adds error margin based on statis-tics from earlier Flocks comparing uncalibrated ver-sus calibrated pointing performance, and uses thislarger FOV as the requirement for star constellationselection. Additionally, the constellation must have ahigh enough density of stars such that multiple can beseen in the main telescope FOV at the same time. If awide, dense constellation cannot be found, a suitablealternative is to target multiple points around thedense constellation to maximize the chance of imag-ing stars.

Automation of Work Flows

The two maneuvers and associated data processingdescribed in the previous section are implemented us-ing an automated system known as Sequencer.7 Se-quencer is an evolution of partially automated pro-cedures used to commission and calibrate the earlierPlanet constellations, and has been a critical tool forthe ADCS team to manage calibrations across thefleet. Its primary purpose is to reduce operator work-load on the ADCS team for calibration, and in thecontext of commissioning its purpose is to reduce thetime taken to produce output products for customers.

For the commissioning of Flocks 2e/2e’ and 2p, themaneuvers were manually scheduled, the data wasautomatically downloaded but processed manually,and then parameters were uploaded to the spacecraft.The calibration of these constellations was handled bya single ADCS engineer and found to be manageablewhen there were no anomalies. However, as has beenthe case with every constellation launched by Planet,there are satellites with unique issues and/or maneu-vers that need to be re-performed and the overall pro-cess could quickly become unwieldy. Sequencer wasdeveloped for the subsequent launch, and Flock 3pwas the first to implement full automation of the cal-

Leung 5 32nd Annual AIAA/USUConference on Small Satellites

ibration process,6 followed by Flock 2k (48 satellites).Using Sequencer, Planet was able to calibrate Flock3p satellites at a rate of approximately one satelliteper day with 75% of calibration activities proceed-ing without operator intervention, and Flock 2k at arate of approximately two satellites every three dayswith 90% of calibration activities proceeding withoutoperator intervention.

Sequencer and State Machines

At a high level, Sequencer manages the scheduling ofthe maneuvers, running of the calibration algorithms,and uploading of parameters. It also automates someof the simple decision making that was historicallymanaged by a person. At its core, it is a timer-basedjobs system that treats the calibration workflow ofeach individual satellite as a state machine. Figure 4is a block diagram with a simplified representation ofthe Sequencer process. The process is the same forboth the first and second calibration maneuvers.

When a satellite enters the state machine as “readyfor calibration”, Sequencer will use the Planet MissionControl API to find a suitable time for the maneu-ver. It does this by applying a set of rules requiredfor each maneuver, for example for the second maneu-ver it will look for a single eclipse period where thereare no other activities scheduled (such as downlinkingor imaging). Sequencer then schedules the maneuverand enters a waiting state where it will periodicallycheck if telemetry has been downloaded for the re-quested time period.

Once the data has been downloaded, Sequencer pro-ceeds to check the integrity of the data. This involvesverifying the data against some simple rules set bythe ADCS engineers to determine if the data is suf-ficient for the calibration algorithms. This includes

the aforementioned checking that data points are welldistributed throughout the body frame, checking theoverall number of data points is as expected, andchecking the current draw on components that weresupposed to turn on during the maneuver. If thedata is deemed insufficient the Sequencer will auto-matically try to reschedule the maneuver. Addition-ally, if after waiting some period of time there is nodata downloaded, Sequencer assumes the maneuverdid not take place and reschedules the activity.

If the data is sufficient, Sequencer will run the calibra-tion algorithms and then compare the output calibra-tion parameters against another set of rules. This setof rules is determined by looking at distributions ofthe calibration parameters across other Doves. Theserules are reviewed each time there are any significantdesign changes to the Dove that might impact theADCS subsystem. If one or more calibration param-eters deviates too far from the expected population,the Sequencer will exit out of the automated pro-cess and the ADCS team is notified. If the param-eters are within family the parameters are uploadedto the satellites and they proceed to nominal oper-ations (or sometimes to the commissioning of othersubsystems). In this manner, the Mission Operationsand ADCS teams are not notified unless there is aproblem during calibration. During the commission-ing of the large constellations Flock 3p and Flock 2k,this was found to reduce cognitive load on the engi-neers and allow them to focus on satellites that hadanomalies.

One of the most useful features of Sequencer wasthe ability to “reinsert” a satellite to the automatedprocess following a failure of the parameter checks.Historically most of these cases have been related tohardware peculiarities that lead to data which skewed

Figure 4. Calibration of the Doves occurs on orbit through two pre-defined maneuvers. Maneuver executionand data analysis is automated via a system known as Sequencer. Events and decisions are designed to removethe need for humans-in-the-loop, and Operators are only notified in the case of anomalies.

Leung 6 32nd Annual AIAA/USUConference on Small Satellites

the calibration results, and the course of action takenwas simply to have an ADCS engineer verify the re-sults before resuming Sequencer at the next eventin the state machine. The ability to reinsert pre-vents unnecessary repeats of the calibration maneu-vers, and this is important to prevent delays in com-missioning because – even though the maneuvers arerelatively short – when commissioning a large constel-lation scheduling/downlinking resources are scarce.During the calibration of Flock 3p and 2k, reattemptsat maneuvers were found to add 2 to 3 days to the cal-ibration duration for a single satellite, so Sequencerwas redesigned to not reattempt unless deemed nec-essary.

ADCS MONITORING AT SCALE

Aside from calibration, it is the responsibility of theADCS team to monitor the estimation/control per-formance of the satellites to ensure that ImagingChain specifications are met.

The ADCS team maintains both product driven met-rics and component level metrics. Product drivenmetrics capture the performance of the ADCS sys-tem as a whole while imaging, while component levelmetrics include measures such as star tracker yield,and magnetometer/sun sensor errors. A key enablerfor maintaining a large constellation has been toadopt the philosophy of using metrics derived fromPlanet’s output products to infer the performance ofthe ADCS system rather than relying purely on com-ponent level metrics. The latter are typically onlyused when debugging is required.

The rationale is that an ADCS system should be ro-bust to non-permanent component level anomalies,and therefore, by focusing attention on those satel-lites which are not meeting the product specifications,the team can more efficiently allocate resources andprioritize issues. An alternative way of stating theapproach is: making sure that a satellite meets theoverall imaging specifications takes priority over mak-ing sure a component on a satellite is in-family withthe rest of the constellation.

Product Driven Metrics

Table 3 lists the product driven metrics and how theyare calculated. The target attitude comes from space-craft telemetry, and is generated by the on boardADCS code based on the schedule and orbit parame-ters. The estimated attitude also comes from space-craft telemetry, and is the output of the on boardExtended Kalman filter. The “true” attitude is de-termined from the satellite imagery. When a scene is

downloaded, it is geo-referenced to actual coordinatesvia automatically detected ground control points andorthorectified using terrain digital elevation models(DEMs). Knowing the latitudes and longitudes ofthe corners of the rectified image, it is possible tocombine this with orbit determination models (fromboth GPS and ranging data) to determine the trueattitude of the spacecraft when the image was cap-tured. With these three pieces of information the es-timation, control and total error of the ADCS systemare calculated and reported as roll/pitch/yaw errorsin degrees. The stability is also calculated from therectified images as the derivative of a time-series ofvectors representing the center of the frame.

These metrics have advantages and disadvantages.The main advantage is that they provide a directmeasure of how well the satellite is performing withrespect to its primary mission since the priority ofthe ADCS team is to know if the system is meet-ing the imaging specifications. The metrics are com-pared against thresholds, which are derived from firstprinciples based on the allowable number of pixelsof blur. By breaking the error up into estimationand control components, debugging becomes easierbecause the focus can be directed toward sensors,actuators, or algorithms accordingly. Another ad-vantage of being derived from the output product isthat it enables simple performance comparison acrosssatellites. This is particularly useful because con-stellations are deployed across multiple launches, andhardware configurations can vary or evolve such thatit can be hard to compare satellites if only looking atcomponent level metrics.

However, because the metrics are generated fromimaging modes, they do not capture the performanceduring other modes such as downlinking or differen-tial drag. These operational modes have their ownmetrics, but typically are not closely monitored be-cause the requirements are much less stringent thanwhile imaging. Another disadvantage of these met-rics is that because they are based on rectification,

Table 3. ADCS Product Driven MetricsMetric CalculationEstimationError

Difference between true attitudeand estimated attitude

Control Error Difference between estimated atti-tude and target attitude

Total Error Difference between true attitudeand target attitude

Stability Boresight “rate”

Leung 7 32nd Annual AIAA/USUConference on Small Satellites

if an image is not rectified, then no metrics are cal-culated. This means that some failure cases wouldnot be captured by the metric. For example, an ex-treme circumstance where the satellite is performingso poorly that it is pointing above the horizon. Itis important to recognize these edge cases and cap-ture them in separate alarm systems in the productpipeline. The boresight “rate” calculation of stabilityhas the disadvantage that is an low-passed measure ofstability depending on the frame rate of the camera.This metric is only intended to capture large devia-tions in body rates as opposed to jitter introduced bythe reaction wheels.

Visualizing Product Driven Metrics

Monitoring of these metrics is done via a dashboard.When developing early versions of the dashboard, theteam iterated on many dashboard designs to find thebest “at-a-glance” measure of fleet-wide performance.For example, it wasn’t clear whether it was best toreport the median, mean, or some nth percentile ofeach metric for each satellite. The ADCS team even-tually found boxplots to be the most useful, bothfor quickly discerning a satellite’s individual perfor-mance, as well as a comparison to the rest of thefleet. On the dashboard a boxplot for every satelliteis shown, with its metrics aggregated for some timeperiod (typically 7 days, though the dashboard canbe dynamically adjusted).

An illustrative example is shown in Figure 5. A sin-gle plot is shown here, but the ADCS dashboard hasplots for each of the errors listed in Table 3. Each

boxplot corresponds to an individual satellite and aregrouped by Flock. The featured dashboard coversthe entire constellation and it is immediately obviousthat one Flock is performing differently to the others.This snapshot was actually taken shortly after a newconstellation had been through the automated com-missioning process. This constellation had launchedinto a different orbit than prior Flocks and it turnedout that some of the pre-launch attitude parameterswere not valid for this orbit. This was quickly noticedby viewing the dashboard and, after adjusting oper-ational parameters for the different orbit the metricsmoved in line with the rest of the fleet.

In addition to detecting systemic issues, the dash-board also makes it easy to identify individual satel-lites that are not within family. Viewing the productdriven metrics in this manner makes it simple to de-termine which satellites warrant deeper investigationof component level metrics.

Component Level Metrics

Component level metrics are used when an individ-ual satellite’s performance needs to be debugged.These metrics are constantly under development asthe team encounters new and recurring anomalies.Most of the development has focused on metrics forthe sensors, although recently efforts have started toshift to developing actuator metrics as the constel-lation has been aging. As a general approach, theADCS team tries to log data and calculate metricsbefore they are needed - the background collection ofthis information enables quicker root-cause analysis.

Figure 5. An example of Planet’s fleet monitoring dashboards with product driven metrics. Product drivenmetrics combined with boxplots make it quick to discern a satellite’s individual mission performance whilealso allowing comparison to the rest of the fleet. Here, it is clearly visible that the performance of the recentlydeployed Flock has less consistent performance.

Leung 8 32nd Annual AIAA/USUConference on Small Satellites

Sensor Metrics

Regarding sensors, the star tracker is the primarysensor for the Dove ADCS system and oftentimes de-graded performance can be traced back to this sensor.Aside from overall star camera solution yield, two ofthe most useful metrics for monitoring star trackerperformance are 1) the number of lit pixels, and 2)the number of centroids. The number of lit pixelscan be used to differentiate between stray light orobstruction issues, and the number of centroids canbe used to infer whether the solutions were impactedby spacecraft motion. This information is logged forevery star image, parsed into a telemetry database,and then available for visualization at any time af-ter downlink. There is also evidence to suggest thatthe star tracker performance varies with temperature,and a proposed metric is the number of pixels per staras a proxy for change in focus, though this has yet tobe automated.

The Dove also uses the sun sensors and magnetome-ter for attitude estimation. Using the true attitudefrom the rectified images, it is possible to use Sunand magnetic field models to estimate the Sun andmagnetic field vectors in the body frame and com-pare these to the measured Sun and magnetic fieldvectors. Again, these metrics are computed in thebackground for every image captured and have beena useful resource for measuring the change in perfor-mance of these components over time, particularlydifferentiating between seasonal variations and truedegradation. These metrics also serve as a means ofdetermining when the sensors may need recalibration.

Actuator Metrics

Regarding actuators, an experiment is performedeach month where the gyroscopes are logged at highrate while actuating the wheels at various speeds.Abnormally high or noisy gyroscope rates can be anindicator of potential mechanical wheel issues, andpreemptive actions can be taken to prolong reactionwheel lifetime. At the present time, this experimentis manually scheduled by an operator and the dataanalyzed by either the Mission Operations or ADCSteam. This is a perfect example of a recurring activitythat could be automated by Sequencer and metricsautomatically calculated.

Visualizing Component Level Metrics

The ADCS team does not use a dashboard for compo-nent level metrics due to the volume of data, and alsobecause they are mainly used when debugging ratherthan continuous monitoring. Typically, the metrics

are visualized as a time-series, which is useful for an-alyzing individual imaging collection periods and alsolong term trending. The ADCS team has found thatanother powerful visualization is to view the metricsas a function of the orbit parameters. Specifically inthe case of the Earth observation mission, an insight-ful visualization is to plot the metrics as a function oflatitude and longitude. Early in the star tracker de-velopment phase, this visualization allowed the teamto realize that solution yield was being impacted byEarth’s radiation belts, and to implement fixes ac-cordingly. This is illustrated in Figure 6 where theSouth Atlantic Anomaly is clearly highlighted as aregion where the star camera has trouble solving im-ages. For the sun sensors, this allowed the team togain insight into the performance of this sensor underdifferent seasonal albedo conditions.

SUPPORTING OPERATIONS AT SCALE

All the calibration and monitoring activities de-scribed in the previous sections are intended to makeit quick to get a satellite to nominal operations, iden-tify problem satellites, and take corrective action. Ef-ficient anomaly resolution is already important whenoperating a single satellite, but is critical for con-stellations to avoid overwhelming resources. Focus isplaced on agility through automation: human-in-the-loop analysis should only be used where absolutelynecessary. The Planet ADCS team has iterated onits approach a number of times and believes thereare a few pieces of supporting infrastructure that arerequired to make this possible.

Figure 6. Visualization of star tracker yield as a func-tion of lat/lon for an individual satellite. In this ex-ample it is easy to see that the region of low yieldis geographically constrained to the South AtlanticAnomaly, rather than a systemic issue with the startracker.

Leung 9 32nd Annual AIAA/USUConference on Small Satellites

Bias Toward Automation

The nature of operating a constellation often meansthat a procedure is rarely run just once. Regardlessif the issue is hardware or software related, it is un-likely that only a single satellite is impacted. Withthat understanding, development of any tools withinthe spacecraft teams usually leans towards automa-tion from the beginning. This mentality applies fromearly-design validation scripts to on-orbit anomalyresolution. Automation has already been highlightedas a central theme of the ADCS calibration and mon-itoring approaches. For anomaly resolution, the firsttime an anomaly is encountered satellite operatorsare heavily involved, but the general procedure is toperform detailed post-mortems and from those de-rive procedures that can be automated to minimizespacecraft downtime. An example of this on theDoves is the handling of failed reaction wheels. Tra-ditionally this was a manual process that could takedays between detection and resolution that involvedMission Operations and ADCS teams. However, be-cause the resolution process is almost identical ev-ery time, it was converted into an automated detec-tion/resolution process that reduced downtime to lessthan 30 minutes. Another advantage of Sequencer isthat calibrations can be easily be performed againat any time for any number of satellites; such as re-peating the first calibration maneuver as the sun sen-sors degrade, as well as repeating the second calibra-tion maneuver as improvements are made to the maintelescope image timing. More broadly, an automatedgeneral-purpose system that is capable of a) carryingout an activity in space, b) running scripted analysison the output data, and c) doing this for n numberof satellites, is very valuable and extensible to manyspacecraft activities outside of calibration.

Data Retrieval Services

The previous section detailed metrics used for perfor-mance monitoring, but an important upstream capa-bility to enable this is the provision of data retrievalservices. Once Dove telemetry is downlinked or ametric is computed, it is uploaded to one of Planet’smultiple cloud services. The ADCS team relies heav-ily on a series of APIs that allow for the retrievalof data. Even though there are multiple services forfetching different types of data – such as telemetry,orbit determination, satellite activity timelines, andimage metadata – Planet generally maintains a stan-dardized set of parameters for retrieving data acrossall services, namely a satellite hardware ID, a re-quested start time, and a requested end time. Thereare also additional search parameters such as Activity

IDs, which are assigned to each imaging, downlink, orexperiment activity. When operating at scale, anal-ysis is often performed for many satellites at a time,and so the services should be designed to supportheavy request loads. Additionally, there is value inAPIs providing machine readable formats to simplifyimporting into analysis tools. There are cases whereDove subsystems output logs that are designed to behuman readable. Making these machine readable re-quires maintenance of an additional log-parsing layerbetween the downlink and ingestion of the data, asufficient solution but one that is brittle to changesin logging outputs. This is better addressed at thespacecraft level by modifying the data generation,and is a process that is underway within the widerPlanet spacecraft design team.

Record Keeping and Configuration Manage-ment

Like any organization that needs to keep track ofmany assets, detailed record keeping is invaluable.For tracking the Dove constellation, one of the chal-lenges was configuration management as the hard-ware iterations evolved and as events took place onorbit over time. The system used for this does notneed to be overly complicated; at Planet the ADCSteam maintains a single document that lists the cur-rent on-orbit status of each satellite’s ADCS subsys-tem. This includes links to manufacturing records,commissioning activities, any software modificationsor operational workarounds that have been applied,and any hardware issues. This document only servesas an index of the current status, and details aremaintained in other places. For example, on-orbithardware and software issues are addressed via a tick-eting system and all debugging efforts are thoroughlydocumented in the tickets while only links are pro-vided in the master ADCS document.

Manufacturing records have also proven to be a greatresource for debugging on orbit. Each of the Dovesgoes through a suite of both automated and manualtests during the manufacturing process and compre-hensive records are kept at every stage. Small detailscaptured during testing, such as recording softwareversions, time-stamping of test runs, and capturingclose up photos, have been used on multiple occasionsto explain behavior on-orbit. It is recommended tocapture as much detail as possible during the manu-facturing process; the cost of storage is low and muchof the work can be automated via software. This datacollection is particularly important with early designiterations where detailed documentation is often anafterthought.

Leung 10 32nd Annual AIAA/USUConference on Small Satellites

CONCLUSION

The ADCS subsystem is integral to the success of aspacecraft carrying out its mission. Calibrating andmonitoring this subsystem across a large constella-tion is challenging, particularly due to the complexi-ties introduced by distributed launches and multiplehardware revisions. Furthermore, as constellationsgrow in size, both human and material resources canbecome constrained and need to be allocated appro-priately.

Through its experience building and operating theMission One constellation, Planet has iterated onan system to allow a small Mission Operations andADCS design team to ensure that imaging specifica-tions are met. Pre-launch calibrations are moved topost-launch operations, using automated maneuversand processing. Spacecraft performance is monitoredthrough simple visualizations, firstly of productdriven metrics, followed by component level metrics.Both these activities are supported by a generalbias toward automation and the availability of dataretrieval services. All the services are intended tominimize the need for humans-in-the-loop, but whereit is required the systems are designed to enableagile decision making. Planet will continue with thismentality as it continues to iterate on the Dove andreplenish the constellation.

© 2018 Planet Labs Inc. All rights reserved

References1Marshall, W. (2017, Nov 9). Mission 1 Complete! [blog post].Retrieved from: https://www.planet.com/pulse/mission-1/

2Beukelaers, V., Howard, B., Mason, J., Safyan, M., Doan, D.,Perera, J. (2018). Completing Mission 1: Imaging Everywhere,Every Day, Proceedings of the 4S Symposium Small SatellitesSystems and Services, 28 May - 1 June 2018, Sorrento, Italy.

3Leung, L. (2012). Performance Analysis and Behaviour Es-timation of Satellites Using Telemetry Data (unpublished un-dergraduate thesis). University of New South Wales, Sydney,Australia

4Springmann, J. and Cutler, J. (2012) Attitude-IndependentMagnetometer Calibration with Time-Varying Bias, Journalof Guidance, Control, and Dynamics, Vol. 35, No. 4, pp. 1080-1088.

5Foster, C., Mason, J., Vittaldev, V., Leung, L., Beukelaers,V., Stepan, L., Zimmerman, R. (2018). Constellation Phasingwith Differential Drag on Planet Labs Satellites, Journal ofSpacecraft and Rockets, Vol. 55, No. 2, pp. 473-483.

6Zimmerman, R., Doan, D., Leung, L., Mason, J., Parsons,N., Shahid, K., (2017). Commissioning the World’s LargestSatellite Constellation, Proceedings of the AIAA/USU Confer-ence on Small Satellites, Year In Review, SSC17-X-03. https://digitalcommons.usu.edu/smallsat/2017/all2017/138/.

7Parsons, N. (2017, Dec). Operator Sanity via Automation.Presentation at the 10th Workshop on Spacecraft Flight Soft-ware, Laurel, MD.

Leung 11 32nd Annual AIAA/USUConference on Small Satellites