CubeSat Implementation and Management Using Differential Drag

by MASANGRMNS8TUTE OF TECHNOLOGY Zachary Thomas Lee IJUL 112017 B.S. Mechanical Engineering United States Military Academy, 2015 LIBRARIES ARCHIVES Submitted to the Department of Aeronautics and Astronautics in partial fulfillment of the requirements for the degree of

Master of Science in Aeronautics and Astronautics

at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY

June 2017 Massachusetts Institute of Technology 2017. All rights reserved.

Signature redacted A uthor ...... Department ronaucstronautics , eoatic and Atoatc May 25, 2017

Certified by...... Signature redacted V Kerri Cahoy Associate Professor of Aeronautics and Astronautics Thesis Supervisor

Accepted by...... Signature redacted Youssef M. Marzouk Associate Professor of Aeronautics and Astronautics Chair, Graduate Program Committee Disclaimer: The views expressed in this thesis are those of the author and do not reflect the official policy or position of the United States Army, the United States Department of Defense, or the United States Government.

2 CubeSat Constellation Implementation and Management Using Differential Drag by Zachary Thomas Lee

Submitted to the Department of Aeronautics and Astronautics on May 25, 2017, in partial fulfillment of the requirements for the degree of Master of Science in Aeronautics and Astronautics

Abstract

Space missions often require the use of several satellites working in coordination with each other. Industry examples include Planet, which is working to develop a constellation of over 100 Cube Satellites (CubeSats) to obtain global imagery data daily, and Astro Digital, which seeks to implement a constellation of multispectral imaging satellites to image the entire Earth every three to four days [1, 2]. CubeSat are also being considered for applications such as secure laser commu- nication relays and for weather sensing with short revisit times [3, 4]. Such missions require several CubeSats with regular spacing within an orbital plane to achieve their objectives. However, an appropriately arranged constellation can be particularly difficult to implement for CubeSats. Cold gas propulsion systems with the ability to provide tens of meters per second of delta-V (for a 3U CubeSat) exist and can be used for constel- lation management on timescales of weeks [5, 6, 7, 8, 9]. Monopropellant systems also currently exist for CubeSats, but, like cold gas systems, they can require significant power, mass, volume, and thermal management resources, and they also carry more risk [9, 10]. Launch services providers often limit acceptance of pressurized vessels, which can limit launch opportunities for CubeSats with cold gas or monopropellant propulsion systems. Although electric propulsion systems can provide up to 100 m/s delta-V for a 3U CubeSat, they also have mass, volume, cost, and power impacts, and they typically require timescales on the order of weeks to months to cause significant changes [6, 11, 9]. In low Earth orbit, there is sufficient drag to perturb satellite orbits. Though it varies widely based on conditions, at 500 kilometer (km) altitude, the acceleration due to drag on a 3U CubeSat can be around 15 ' per unit area [12]. Over time, this is enough acceleration to change a satellite's orbit. By controlling the attitude of a satellite, the profile area can be changed. By manipulating the profile area, the drag force can be changed, and satellites can be moved relative to each other within an orbital plane. Using differential drag at 550 km altitude, a 3U CubeSat can.move its true anomaly 180 degrees relative to another in the same orbital plane in about

3 100 days. Previous work with differential drag for constellation management has focused on linearized control schemes for formation flight. However, the linearized equations used for close-proximity flight are not valid for maximum-separation missions [13, 14, 15]. While some work does exist on maximum-separation missions, conditions are simplified or details on the estimation and control scheme are omitted or inadequate [8, 16, 17, 18, 19]. This work uses an unscented Kalman filter to estimate mean orbital elements and a novel control scheme to first offset and then match relative mean semi- major axes. The separation of mean semi-major axes creates different mean motions such that allow for the relative mean anomalies to be controlled. Simulation results demonstrate that differential drag can be used to control and maintain satellites within 0.5 degrees of the desired mean anomaly relative to other satellites. For two satellites in the same orbital plane at 500 km altitude seeking to maximize separation, 0.5 degrees corresponds to an angle that can be traversed in under 10 seconds. For Earth observation mission, this has a negligible effect on revisit times and can be considered an acceptable result.

Thesis Supervisor: Kerri Cahoy Title: Associate Professor of Aeronautics and Astronautics

4 Acknowledgments

While not without its difficulties, earning my degree at MIT has been an incredible journey, and I am so thankful to have had the opportunity to study and conduct research at MIT and Lincoln Laboratory. Having the support of my friends, family, and peers has meant more to me than words can express. Specifically, I would like to thank Professor Kerri Cahoy, my thesis advisor, for her guidance throughout my time at MIT. From the day I started to now, I have grown so much, and I could not have achieved this without Kerri. I would also like to thank Michael DiLiberto, Bill Blackwell, Dan Cousins, and Weston Marlow for mentoring me and taking the time to welcome me into a new project and teach me throughout my time working at Lincoln Laboratory. The entire MiRaTA team has taught me about satellite engineering, and they have made my experience a rewarding one. I am grateful to have worked with such an amazing team. My parents and brothers have always been supportive in my endeavors. Studying at MIT has been a dream of mine since I was a teenager, and I would not be here without the support of my family. Lastly, my friends have consistently encouraged me to pursue my goals, and this has helped keep me motivated throughout graduate school. Simply put, I could not have graduated MIT without the support of those close to me.

5 Contents

Abstract ...... 3 Acknowledgments ...... 5 Contents...... 7 List of Figures...... 9 List of Tables ...... 10 Key Nomenclature ...... 11

1 Introduction 13 1.1 Introduction ...... 13 1.1.1 CubeSats ...... 13 1.1.2 Constellations ...... 18 1.2 Contributions ...... 20 1.3 Organization ...... 21

2 Background 22 2.1 Chapter Overview ...... 22 2.2 Orbits and Astrodynamics ...... 22 2.2.1 O rbits ...... 23 2.2.2 Orbital Perturbations ...... 24 2.2.3 Gauss's Variational Equations . . 34 2.2.4 Mean Orbital Elements ...... 36 2.2.5 Clohessy-Wiltshire Equations . . 38 2.3 Propulsion ...... 39 2.4 Global Positioning System ...... 41 2.5 Two-Line Elements ...... 42 2.6 Orbit Estimation ...... 42 2.6.1 Unscented Kalman Filter .... . 46 2.7 Attitude Determination and Control 49 2.7.1 Sensors ...... 50 2.7.2 Actuators ...... 50 2.7.3 CubeSat Performance ...... 51 2.8 Orbit Control through Differential Drag 52

3 Modeling and Simulation Approach 57 3.1 Chapter Overview ...... 57 3.2 Simulation Overview ...... 57

6 3.2.1 Orbit Propagation ...... 58 3.2.2 Simulation Parameters ...... 60 3.3 E stim ation ...... 61 3.4 C ontrol ...... 64 3.5 Case Studies ...... 69 3.5.1 Case Study 1: NPSCuL 8-CubeSat Deployer ...... 71 3.5.2 Case Study 2: TROPICS Low Inclination Orbit ...... 73 3.5.3 Case Study 3: Polar, Elliptical Orbit ...... 74 3.5.4 Case Study 4: Planet Flock 1-C Comparison ...... 75 3.5.5 Sensitivity Study on Implementation Time ...... 76 3.5.6 Station Keeping After Implementation ...... 77 3.6 Additional Considerations ...... 77 3.6.1 Reaction Wheel Saturation ...... 78 3.6.2 Orbit Lifetime ...... 78 3.6.3 Power Generation ...... 79 3.7 Chapter Summary ...... 79

4 Analysis and Results 80 4.1 Chapter Overview ...... 80 4.2 UKF Performance for a Single CubeSat in Case 3: Polar, Elliptical Orbit 80 4.3 Results for Case Study 1: NPSCuL 8-CubeSat Deployer ...... 85 4.4 Results for Case Study 2: TROPICS Low Inclination Orbit ...... 90 4.5 Results for Case Study 3: Polar, Elliptical Orbit ...... 92 4.6 Results for Case Study 4: Planet Flock 1-C Comparison ...... 95 4.7 Sensitivity Study on Implementation Time ...... 98 4.8 Station Keeping After Implementation ...... 99 4.9 Chapter Summary ...... 102

5 Conclusion and Future Work 104 5.1 Sum m ary ...... 104 5.2 Research Contributions ...... 105 5.3 Future W ork ...... 105

References 107

7 List of Figures

1-1 Number of CubeSat launches by from 2005 to 2015 [30] 15 1-2 CubeSat mission status [42] ...... 17 1-3 TROPICS constellation concept [3]...... 19 1-4 Satellite size comparison ...... 20

2-1 A highly exaggerated depiction of Earth's oblateness [51] . . 25 2-2 Types of spherical harmonics [52] ...... 25 2-3 Nodal regression due to Earth's oblateness [57] ...... 27 2-4 Apsidal precession due to Earth's oblateness [57] ...... 27 2-5 US 1976 Standard Atmosphere Density Profile [61] ...... 30 2-6 The International Space Station altitude during the Halloween storm s of 2003 [63] ...... 31 2-7 Orbit lifetimes for LEO satellites with different drag profiles 32 2-8 The Surrey Training, Research, and Nanosatellite Demon- strator: A 3U CubeSat with single-deployable solar panels [6 4 ] ...... 3 2 2-9 Effect of disturbing forces by altitude [12] ...... 34 2-10 Osculating and mean semi-major axis for a LEO satellite . . 37 2-11 LVLH frame of reference (y is in the direction of the velocity vector) [69] ...... 39 2-12 Truth, estimated, and unfiltered semi-major axis ...... 44 2-13 An ADCS block diagram [90] ...... 51 2-14 CubeSat altitudes [26] ...... 53 2-15 Simple satellite separation using differential drag ...... 55

3-1 High-level block diagram of simulation ...... 58 3-2 Satellite drag profile comparison ...... 59 3-3 Planet's satellites' relative mean anomalies (blue lines repre- sent high-drag windows) [18] ...... 66 3-4 The MiRaTA CubeSat [99] ...... 70 3-5 The N PSCuL [34] ...... 72

4-1 Estimation of the mean semi-major axis (Case 3: Polar, El- liptical O rbit) ...... 81 4-2 Estimation of the mean eccentricity (Case 3: Polar, Elliptical O rb it) ...... 82

8 4-3 Estimation of the mean inclination (Case 3: Polar, Elliptical Orbit) ...... 82 4-4 Estimation of the mean of the ascending node (Case 3: Polar, Elliptical Orbit) ...... 83 4-5 Estimation of the mean argument of perigee (Case 3: Polar, Elliptical O rbit) ...... 83 4-6 Estimation of the mean anomaly (Case 3: Polar, Elliptical Orbit) ...... 84 4-7 Case 1: NPSCuL 8-CubeSat Deployer orbit clusterness (with- out control) ...... 85 4-8 Case 1: NPSCuL 8-CubeSat Deployer orbit clusterness (with control) ...... 86 4-9 Case 1: NPSCuL 8-CubeSat Deployer relative semi-major axes (with control) ...... 87 4-10 Case 1: NPSCuL 8-CubeSat Deployer relative mean anoma- lies (w ith control) ...... 88 4-11 Case 2: TROPICS Low Inclination orbit clusterness ...... 90 4-12 Case 2: TROPICS Low Inclination orbit relative semi-major axes ...... 91 4-13 Case 2: TROPICS Low Inclination orbit relative mean anoma- lies ...... 92 4-14 Case 3: Polar, Elliptical orbit clusterness ...... 93 4-15 Case 3: Polar, Elliptical orbit relative semi-major axes . . .. 94 4-16 Case 3: Polar, Elliptical orbit relative mean anomalies ... . 95 4-17 Case 4: Planet Comparison clusterness ...... 96 4-18 On-orbit relative arguments of latitude (Case 4: Planet Com- parison) [18] ...... 97 4-19 Case 4: Planet Comparison simulation relative arguments of latitu d e ...... 97 4-20 Station Keeping clusterness for Case 2: TROPICS Low Incli- nation (no control from day 173 to day 273) ...... 100 4-21 Station Keeping relative mean anomalies for Case 2: TROP- ICS Low Inclination (no control from day 173 to day 273) . . 101 4-22 Station Keeping relative semi-major axes for Case 2: TROP- ICS Low Inclination (no control from day 173 to day 273) .. 101

9 . am

List of Tables

2.1 The most significant spherical harmonics [53] ...... 26 2.2 Factors that affect atmospheric drag ...... 29

3.1 Case 1-3: Drag Configurations and Corresponding Profile Areas 70 3.2 Case 1: Initial orbit of the NPSCuL 8-CubeSat Deployer [100] 73 3.3 Deployment parameters from the NPSCuL (LVLH Frame) . 73 3.4 Case 2: Initial orbit for TROPICS Using a Single Orbit Plane (of the three planned planes in the mission) [3] ...... 74 3.5 Case 3: Initial Polar, Elliptical Orbit ...... 75 3.6 Case 4: Planet Flock 1-C Comparison (Dove 090C initial or- bit) [104] ...... 76 3.7 Case 4: Drag configurations and corresponding profile areas 76 3.8 Implementation time drag configurations and corresponding profile areas ...... 77

4.1 Root mean square errors (Case 3: Polar, Elliptical Orbit) . . 84 4.2 Case 1 orbit altitudes [km] ...... 89 4.3 Constellation implementation time (Case 2) ...... 98

10 Key Nomenclature

AFSPC Air Force Space Command

ATMS Advanced Technology Microwave Sounder

CHAMP Challenging Minisatellite Payload

COE Classical Orbital Elements

COTS Commerical off the shelf

CSD Canisterized Satellite Dispenser

CW Clohessy-Wiltshire

ECEF Earth Centered Earth Fixed

ECI Earth Centered Inertial

EHS Earth Horizon Sensor

EKF Extended Kalman Filter

GNSS Global Navigation Satellite System

GPS Global Positioning System

GVE Gauss's Variational Equations

HPOP High Precision Orbit Propagator

IMU Inertial Measurement Unit

ISIPOD Innovative Solutions in Space Payload Orbital Dispenser

JPSS-1 Joint Polar Satellite System 1

KF Kalman Filter

LEO Low Earth Orbit

LVLH Local Vertical Local Horizontal

MEO Medium Earth Orbit

MiRaTA Microwave Radiometer Technology Acceleration

MLE Maximum Likelihood Estimate

MicroMAS-1 Micro-sized Microwave Atmospheric Satellite

NPSCuL Naval Postgraduate School CubeSat Launcher

PD Proportional Derivative

PID Proportional Integral Derivative

11 P-POD Poly Picosat Orbital Deployer

RAAN Right Ascension of the Ascending Node

RF Radio Frequency

RMSE Root Mean Square Error

SGP4 Simplified Perturbations Model 4

SRP Solar Radiation Pressure

STK Systems Tool Kit

TLEs Two-Line Elements

TROPICS Time-Resolved Observations of Precipitation structure and storm Intensity with a Constellation of Smallsats

UHF Ultra High Frequency

UKF Unscented Kalman Filter

12 Chapter 1

Introduction

1.1 Introduction

1.1.1 CubeSats

Large satellites, such as the Global Positioning System (GPS) IIIA, cost about

$220 million each to build, without including costs for the launch vehicle and operation

[20]. These satellites are expected to take 10 from initial contract to launch, and they are built to operate for 15 years [21]. Due to the high cost, GPS satellites undergo thorough testing and typically carry redundant subsystems and components.

Stringent environmental and verification tests are conducted before launch to ensure mission success. Due to this testing, failures in large satellites are relatively rare, and over 90% of all satellites have been successful in the last four decades [22]. The

20 GPS IIR and IIR-M satellites have an availability record of 99.96%, and many of these satellites also surpassed their planned operational lifetime [23]. However, this reliability comes with a cost. The complexity and resources required to build a reliable and robust satellite are immense. As an alternative to large, complex satellites, Cube

Satellites (CubeSats) have gained popularity in the last decade.

CubeSats are a type of nanosatellite with a common form factor, which is described in terms of cubic units called "U." In general, 1U describes a 10 x 10 x 10 cm3 cube with a mass below 1.33 kg [24]. CubeSats typically range from 1U to 6U, but the most

13 common form factor is 3U, which weighs about 4 kg and has dimensions of 30 x 10 x 10 cm3 [25]. The concept of CubeSats were first proposed by Jordi Puig-Suari at Cal

Poly, San Luis Obispo, and Bob Twiggs at Stanford's Space Systems Development

Laboratory in 1999 [24]. CubeSats have already played an important role in space by reducing the barrier to entry. PocketQubes are another type of standardized small satellite made of a 5 x 5 x 5 cm 3 cube, but they are less common than CubeSats, so this thesis will focus on CubeSats.

Missions using CubeSats are often considered to be lower risk from a cost per- spective than missions with larger satellites because the required investment is much less. For the price of one large satellite, it is possible to make hundreds of CubeSats.

In the last decade, the number of CubeSats has increased dramatically, as shown in Figure 1-1. It is important to note that 93 of the CubeSats in 2014 and 60 in

2015 were all from Planet's (formerly Planet Labs) "Flock" constellation [26]. The reduced cost of CubeSats has allowed universities and small companies to put satel- lites in orbit. Universities have been able to produce CubeSats for a costs as low as

$50,000 - $200,000, which is significantly cheaper than larger satellites, though this is dependent on the payload, and there is variation [27]. Launches typically cost about

$100,000 per U, but they can be subsidized [28]. Companies such as Planet and Spire use constellations, groups of satellites with planned orbits and coverage areas work- ing towards a common goal [4, 29]. By using a common form factor and common hardware, CubeSats are able to be produced very rapidly. For example, Planet Labs plans to build up to 120 in six weeks [1].

A key difficulty in using CubeSat constellations is implementing them, since few

CubeSats have propulsion, and also because CubeSats are secondary or auxiliary payloads on launch vehicles, which can limit the orbits available to the constellation.

This thesis explores how differential drag can be used by small satellites in low Earth orbit for constellation implementation and management.

14 Number of CubeSats Launched by Year (2005-2015)

140

120

100

Lost in launch failures

40

40

2005 2006 2007 200 2009 2010 2011 2012 2013 2014 2015

Figure 1-1: Number of CubeSat launches by year from 2005 to 2015 [30]

Standardization and modularity are what distinguish CubeSats from other types of nanosatellites. This standardization is explained in detail in California Polytechnic

Institute's CubeSat Design Specification [24]. The key advantages of the standard design are the availability of Commerical off the shelf (COTS) components that have evolved to be compatible with the standard and common deployers.

Within the satellite industry, COTS components can include batteries, solar pan- els, sensor suites, reaction wheels, magnetic torque rods, CubeSat structures, and even entire buses. While the payload is often unique for each satellite, the bus, which includes all non-payload parts required for the mission to be successful, can take ad- vantage of COTS parts. The bus includes the typical spacecraft subsystems such as structural, mechanical, power, attitude and orbit control, telemetry and command, thermal, data handling, and propulsion [12]. COTS components can sometimes be difficult to integrate with a satellite and may need to be adapted to fit specific needs, but they also simplify the design process and are relatively inexpensive compared with custom-made components. CubeSat technology is also enabled by relatively recent technological advances in microelectronics, high-efficiency solar cells, high-energy- density batteries, and small mechanical systems [31].

15 Also fueling the production of CubeSats are standardized deployers such as the Poly Picosat Orbital Deployer (P-POD), NanoRacks, Naval Postgraduate School CubeSat Launcher (NPSCuL), Canisterized Satellite Dispenser (CSD), and Inno- vative Solutions in Space Payload Orbital Dispenser (ISIPOD) [32, 33, 34, 35, 36]. The primary function of these standardized deployers is to convince launch services providers to take the risk of including CubeSats as secondary payloads on their rock- ets. The containers protect the primary payload and reduce risk. The deployers also allow CubeSat designers to adhere to a common form. This makes space more acces- sible to resource-constrained institutions and encourages the development of COTS components to fit the CubeSat form factor. While CubeSats do reduce the barrier to entry into satellite engineering, they are not only for small companies and universities. Cubesats have also been shown to be capable of achieving significant science missions. For example, for Earth observation and remote sensing missions, CubeSats can support improved revisit times because many small satellites can be launched instead of a single larger one. Earth observa- tion missions have been shown to be feasible using CubeSats [27, 37]. For example, hyperspectral microwave and millimeter wave atmospheric sounding on the Micro- sized Microwave Atmospheric Satellite (MicroMAS-1) CubeSat and Global Naviga- tion Satellite System (GNSS) occultation on the Challenging Minisatellite Payload (CHAMP) CubeSat are two examples of CubeSats with Earth observation missions

[27]. Although the payloads on larger satellites can often be larger, more accurate, and have higher spatial resolution, the MicroMAS-1 radiometer helps fulfill a role sim- ilar to that of the Advanced Technology Microwave Sounder (ATMS) on the Suomi NPP satellite or Joint Polar Satellite System 1, both of which have a mass over 2000 kg [38, 39]. Currently, CubeSats are launched as secondary or auxiliary payloads on rockets. This means that their orbits and schedule are dependent on the primary payload. As such, CubeSats must meet requirements for integration set by the launch provider to ensure they do not cause harm to the primary payload. Certain tests such as vibration, shock, thermal vacuum are often required by the launch integration services

16 provider. These requirements sometimes exceed the actual launch environment, which can result in overdesign of CubeSats. CubeSat testing is explained in detail in other work [40]. While CubeSats come with many advantages, they are not without their chal- lenges. Because CubeSats are relatively small, there are strict mass and volume constraints. Schedules, budgets, resources, and staffing are limited as well. Often times, this means that CubeSats are sent into orbit without having been tested as thoroughly as their larger counterparts. Many university teams also suffer from per- sonnel turnover, which creates difficulty due to experience being lost and knowledge not always being passed on effectively. These challenges may help explain why Cube- Sats experience a higher rate of failure than larger satellites [40, 41]. While the loss of any satellite is significant, CubeSats are much less expensive than their larger coun- terparts, so failures are seen as less significant. CubeSat missions are low risk from a cost perspective, but they are risky in that they have a lower mission success rate than larger satellites. Figure 1-2 shows the mission status of all CubeSats launched as of May, 2017.

CubeSat Mssion Status, 2000-present

Stowed Unknown 6% 20 5% 2 Launch FaN mission I1 % Achieved DOA 14% M Mission In W~ssin inEarly Loss Progress 165 26.9%

Figure 1-2: CubeSat mission status [42]

CubeSat constraints must also be considered when designing a mission. For ex- ample, CubeSats with higher orbits can experience difficulty with radiation, which can damage electronics if the satellite is not designed to be able to withstand it.

17 Likewise, propulsion systems can be more difficult to have on a CubeSat due to cost, volume, mass constraints, as well as the added complexity and administrative burden of gaining approval for such a system. Although small satellites have used propulsion systems, the vast majority of them do not [41]. As such, the selected orbit (which is limited by which launches have CubeSats as secondary payloads) can be very im- portant for a mission. The constraints of CubeSats also tend to make subsystem performance less effective. About 85% of picosatellites and nanosatellites have so- lar cells and a secondary battery (the rest only have a primary battery), and power generated is limited to several watts [41]. This limits the possible payloads, commu- nication systems, and other hardware. Communication tends to be on the Ultra High

Frequency (UHF) band as well, so data rates are lower than in larger satellites. This is largely due to the limited power generation and storage capabilities of CubeSats [41].

CubeSats continue to become more prevalent, and for those operating as part of a constellation, their orbit relative to the other satellites in the constellation is im- portant. The relative orbits of satellites determine revisit times, which are minimized with maximum separation within an orbital plane. Because CubeSats have limited control over their initial orbit and typically do not have propulsion systems, constel- lation management through differential drag is a particularly important capability.

1.1.2 Constellations

A constellation of satellites is defined as group of satellites that operate as a system towards a common goal that could not be completely fulfilled by a single satellite.

A common and very useful constellation is the GPS, which is a set of satellites that provide users with position, navigation, and time information. The constellation is owned and operated by the United States and currently comprises 31 operational satellites [43]. The satellites operate in Medium Earth Orbit (MEO) such that they have an of half a day. To maintain their orbits, each satellite has its own propulsion system. GPS satellites are a very well-known constellation, but there are many other examples including the Iridium, Planet, and Globalstar constellations.

18 The orbit configuration for each constellation varies depending on the mission. For many Earth observation missions, such as that of Planet, maximum Earth coverage is desired. For constellations seeking to maximize coverage within an orbital plane, satellites should be spaced with maximum (and equal) distance because this minimizes the revisit times for locations on Earth.

Other missions, such as MIT Lincoln Laboratory's Time-Resolved Observations of

Precipitation structure and storm Intensity with a Constellation of Smallsats (TROP-

ICS) only seek to view particular regions of Earth. The TROPICS constellation will have quick revisit times for the tropical regions of Earth because the mission is to examine the structure and development of tropical storms [3]. To achieve this goal, three orbital planes are used with two to four CubeSats per orbital plane. As is the case with many Earth observation missions, the CubeSats within each orbital plane should be spaced with maximum distance apart from each other (90 degrees for the

4 satellite case) as shown in Figure 1-3.

Figure 1-3: TROPICS constellation concept [3].

Other than the distinct missions, another key difference between the GPS con- stellation and the TROPICS constellation is the type of satellite utilized. The GPS satellites have a mass of over 3800 kg each, but the TROPICS satellites are CubeSats

19 with a mass of only 4 kg [44]. This difference is illustrated in Figure 1-4.

(a) GPS Satellite [45] (b) 3U CubeSat (MicroMAS) [46] Figure 1-4: Satellite size comparison

The size and mass difference makes sense due to the vastly different missions and requirements, but constellation implementation techniques for these two missions must also be very different. The GPS satellites both have more control over their orbits and can use their hydrazine propulsion system to change their orbit to the desired one. The CubeSats, on the other hand, must either stick with their initial orbits (which is likely suboptimal given their status as a secondary payload), change their orbit using either propulsion (which is difficult to implement on a CubeSat), or use drag to control their orbit. Changing an orbit using differential drag is a feasible technique for most CubeSat missions, and exploring this will be the focus of this thesis.

1.2 Contributions

Differential drag has successfully been used on orbit with the AeroCube-4 and Planet's Dove CubeSats [8, 16, 18, 19]. However, the AeroCube-4 CubeSats simply showed that they could change their relative orbits; the satellites were not precisely

20 controlled to specific relative slot positions. Planet's algorithm placed the satellites

in specific orbits relative to each other, but the control algorithm has ambiguities

and is not completely autonomous. Other research using orbit control has focused

on formation flight, which involves linearized equations that are not appropriate for

maximum separation missions [13, 14, 15]. These limitations will be discussed further in Sections 2.8 and 3.4.

There exists a research gap in implementing and managing CubeSat constellations

in a clear and robust manner. The literature includes algorithms with ambiguities, algorithms that are not completely autonomous, simplified conditions, imprecise re-

quirements, or close proximity operations. Research does not exist that clearly de-

scribes all necessary aspects required for autonomous differential drag control and

simulates it in realistic conditions.

The goal of this work is to fill the research gap of constellation implementation and

management using GPS receivers for estimation and differential drag for orbit con-

trol. This work uses simulation with all major perturbations and includes a complete

discussion of requirements for using differential drag to autonomously implement and

manage CubeSat constellations with maximum angular separation.

1.3 Organization

Chapter 2 covers background information on relevant topics for estimation and

control of satellites to achieve a maximum-separation constellation in Low Earth Orbit

(LEO). This includes the fundamentals of astrodynamics and differential drag, GPS, estimation, attitude determination and control. Chapter 3 will discuss the modeling

approach, case studies, and simulation utilized for this research. Algorithms utilized in this research will also be discussed in Chapter 3. Results and discussion from the simulations will be shown in Chapter 4. Lastly, chapter 5 will summarize the work done and discuss potential for future work.

21 Chapter 2

Background

2.1 Chapter Overview

In this chapter, context for this thesis in the areas of orbital dynamics and esti- mation and control are presented, establishing a foundation for constellation manage- ment and implementation using differential drag. Chapter 2 also serves as a literature review on the topic of differential drag, motivating the need for the approach and re- sults in this thesis.

2.2 Orbits and Astrodynamics

Satellite orbits are governed by by astrodynamics, which defines how bodies in space move in space and time. Astrodynamics is used to define a satellite orbit and propagate its position and velocity to a given time in the future. Unfortunately, there are chaotic elements inherent in astrodynamics, and many aspects, such as at- mospheric drag, are poorly modeled. Errors build up over time, and this can lead to significant long-term errors. For LEO satellites, the magnitude of position vector errors can grow by about 2.5 km per week even with significant post-processing and state filtering [47]. General orbit propagators that take into account basic perturba- tions such as the Simplified Perturbations Model 4 (SGP4) are typically only valid for a few days [48]. Closed-loop estimation is necessary for missions where accurate

22 position or velocity data is required. For satellite constellations seeking to maxi-

mize revisit times, position and velocity data is important for determining satellite

positions relative to each other within an orbital plane.

2.2.1 Orbits

Satellite orbits can be defined in several different ways, but they all have at least 6

state elements and a corresponding time. A common representation is with Keplerian

orbit elements:

" Semi-major axis, a: Describes the separation of the satellite from the main body

" Eccentricity, e: Describes the shape of the ellipse (or conic for non-elliptical

orbits)

" Inclination, i: Describes the tilt of the orbit with respect to the reference plane

" Longitude of the ascending node or Right Ascension of the Ascending Node

(RAAN), Q: Describes where the orbit passes through the reference plane

" Argument of periapsis, w: Describes the orientation of the ellipse in the orbital

plane, measured from the RAAN

" True anomaly, f: Describes the position of the satellite in the ellipse, measured from the argument of periapsis

Another common parameter is the mean anomaly, M, which is the position in

the orbit, just like the true anomaly. However, the mean anomaly is referenced to a

fictitious circular orbit that has the same period as the actual orbit, so it changes at a

constant rate given by the average angular velocity, or the mean motion, n. The mean

anomaly is useful for defining the average angular separation between satellites with

elliptical orbits. The argument of latitude, u, which is the sum of the argument of

periapsis and true anomaly, is used for circular orbits since the argument of periapsis

is undefined.

Orbits can be defined in other ways as well. For example, a GPS receiver provides

6 main state elements: the position and velocity, each in three axes, for a given

time. This is often in the Earth Centered Earth Fixed (ECEF) reference frame,

23 but this can be easily converted to others such as the Earth Centered Inertial (ECI) frame. Another key frame is the Local Vertical Local Horizontal (LVLH) frame, which is centered at the satellite. This frame is also called the RSW frame. The R vector points towards the satellite from Earth's center. The S axis points in the direction of the velocity vector (perpendicular to the radius vector). Lastly, the W axis is normal to the orbital plane. While the position and velocity is a different representation than Keplerian elements, it still fully describes the state of the satellite.

Gerald Hintz conducted a survey and found over 22 different representations of orbits, but this thesis will use the classical elements, mean anomaly, argument of latitude, and position and velocity vectors [49]. While the classical orbital elements seem like a straightforward way to describe an orbit, orbital parameters do not remain constant, even without propulsion, because they are affected significantly by orbital perturbations.

2.2.2 Orbital Perturbations

Orbital perturbations are any forces that cause a satellite's orbit to differ from the orbit it would have using only two-body dynamics without any forces other than gravity. The most important perturbations come from Earth's nonsphericity, atmo- spheric drag (for LEO satellites), Solar Radiation Pressure (SRP), and bodies other than Earth.

From Earth

One key perturbation is due to Earth being nonspherical. All of the mass is not distributed at a single point at its center; instead, mass is distributed throughout the planet. Rather than being spherical, Earth is an oblate'ellipsoid with bulges at the equator and other asymmetries [50]. A .highly exaggerated depiction of this is shown in Figure 2-1.

24 Figure 2-1: A highly exaggerated depiction of Earth's oblateness [51]

Earth's nonsphericity can be categorized into three types of spherical harmonics: zonal, sectoral, and tesseral. These three types of spherical harmonics are shown in

Figure 2-2.

Zonal Tesseral Sectoral

Figure 2-2: Types of spherical harmonics [52]

Zonal harmonics are the most significant and are dependent on latitude. This captures the effects of Earth's oblateness. J2 is the name given to the center zonal harmonic, and its effects are nearly 1000 times more significant than the next har- monic, J3, as well as the strongest sectoral and tesseral harmonics.. J2 is often the only harmonic considered in basic perturbation or propagation analysis. Sectoral harmonics represent bands of latitude, and tesseral harmonics are smaller areas that resemble tiles on Earth. The gravitational coefficients of the most significant spher- ical harmonics are shown in Table 2.1 [53]. Equation 2.1 shows the magnitude of the potential from spherical harmonics where U is the gravitational potential, it is

25 Earth's standard gravitational parameter, P are conventional Legendre polynomials, # is the colatitude, A is the longitude, RE is Earth's radius, r is the distance from the center of the Earth to the satellite, C is tesseral harmonic coefficients, and S is sectoral harmonic coefficients [12, 53].

00 t U I + E E(f)tPt,m sin 0[Ct,m cos mA + St,m sin mA] (2.1) r . t=2 m=O

Table 2.1: The most significant spherical harmonics [53]

Spherical Harmonic Unnormalized Gravitational Coefficient C2,0 (J2) -1.082626 x 10-3 C3,0 (J3) 2.532410 x 10-6 C4 ,0 (J4) 1.619897 x 10-6 C2,1 -2.667394 x 10-6 C3,1 2.193149 x 10-6

The exaggerated effect in Figure 2-1 is due to the J2 harmonic. Earth's nonspheric- ity affects satellite orbits in several ways. Specifically, it causes orbital elements to vary periodically (both short and long periods) as well as drift secularly [53, 54, 55].

Short periods are defined as those that take effect over the course of an orbit while long periods can span from a few weeks to a few months (the period of the apsidal rotation). Secular variations change monotonically and are seen in phenomena such as regression of the line of nodes or precession of the argument of periapsis (apsidal precession), as shown in Figures 2-3 and 2-4. The nodal rate of regression due to J2 effects is given by Equation 2.2 where Re is Earth's radius and n is the mean.motion

[56]. The approximate rate of apsidal precession of perigee is shown in Equation 2.3

dQ 3nR e2j2 c(2.2)COS i 2 dt -2a (1 - e2)2

dw 3nR 2J2 (5 cos2i _ 1) S 2(1 2(2.3) dt 4a2( _ e2

26 K Precession of angular momentum

AA

E xtra pull

Extra pull End'

I Start AJ

Figure 2-3: Nodal regression due to Earth's oblateness [57]

Apogee (start)

Apogee (end)

11 Perigee (end)

Perigee (start)

Figure 2-4: Apsidal precession due to Earth's oblateness [57]

Atmospheric Drag

LEO is defined as the region between 160 km and 2000 km altitude. For LEO satellites, which typically have an altitude between 400 and 1000 km, atmospheric drag is also a perturbation. Its importance increases with decreasing altitude, but it

27 plays a role in most CubeSat orbits because the vast majority of them are below 800 km [26].

The basic drag force equation is shown in Equation 2.4 where V,, is the relative motion between the satellite and the atmosphere, Cd is the coefficient of drag, usually assumed to be about 2.2 for CubeSats (though it can differ), A is the cross sectional area, and p is the air density [53, 58]. The coefficient of drag decreases with altitude, but typical values for CubeSats range from 2.0 to 2.3. [58, 59, 60, 18]. While there are some differences, Earth's atmosphere generally moves synchronously with Earth's rotation [12].

-. rag 1 CdApV (2.4) Fdrag 2 IVrei|

Some equations also use the ballistic coefficient, BC, which is given by Equation

2.5 where m is the mass.

BC = m (2.5) CdA

The most significant force from drag for satellites acts opposite the direction of the satellite motion, but it can also have a cross track component as well because Earth's atmosphere is not static. Determining the exact effect of drag on a satellite can be difficult because the density can be very difficult to predict. Vallado gives numerous spatial and temporal factors that affect the density of the atmosphere, which are summarized in Table 2.2 [53]:

28 Table 2.2: Factors that affect atmospheric drag

Factor Brief Description Altitude Density decreases exponentially with increasing altitude effective altitude is Latitude The Earth is not a sphere, so the constantly changing throughout an orbit differences in the Longitude Different regions of Earth cause atmosphere above in the direction of Diurnal Variations There is a lagging atmospheric bulge the this cycle, which affects 27-Day Solar Rotation Cycle Solar flux changes according to how the Earth's atmosphere is heated The amount of incoming solar radiation that reaches Earth 11-Year Solar Cycle changes according to this cycle, which changes how Earth's atmosphere is heated These are a small factor, but they are related to the Earth's Seasonal Variations distance from the Sun throughout the year and this effect is Atmospheric Rotation The atmosphere rotates with Earth, stronger at lower altitudes temperature and density Atmospheric Winds Atmospheric weather causes variations in the upper atmosphere Fluctuations in Earth's magnetic field affect its Geomagnetic Activityatopeesihl atmosphere slightly Solar flares, coronal mass ejections, hydrogen currents, Irregular Short-Periodic Variations and other transient effects can cause geomagnetic disturbances can cause small Ocean and Atmospheric Tides Ocean and atmospheric tides variations in atmospheric density

Many atmospheric density models at high altitudes exist, some which vary with time, and others that are constant. Simple models, such as the 1976 US Standard

Atmosphere simply depend on altitude, but more complicated ones such as Jacchia-

Roberts account for factors such as solar and geomagnetic activity. Other techniques, such as the dynamic calibration of the atmosphere, make real-time density estimates based on real-time data [53]. Figure 2-5 shows the 1976 Standard Atmosphere, which is a very simple model that can be implemented easily to estimate density for a given altitude.

29 DENSITY, kg/m3 10 1612 10-10 le leo4 2 10o 1000

900 1

E 700-

Ui o 600

400-

20 -4 DENSITY 100- PRESSURE

2 2 10 - 1 l 16- 100 1 e 106 PRESSURE, N/m 2

Figure 2-5: US 1976 Standard Atmosphere Density Profile [61]

The 1976 Standard Atmosphere Model is very easy to implement for estimating density at a certain altitude, but it can also have errors. The atmosphere is very difficult to model, and phenomena such as atmospheric tides and solar activity and space weather can significantly increase the atmospheric density at a given altitude, which can cause LEO satellites to drop in altitude, which reduces orbit lifetime.

For example, the during the Quebec Blackout Storm of March, 1989, hundreds of operational satellites had noticeable drops in altitude, and the effect of the Halloween storms of 2003 can be easily seen in Figure 2-6 [62, 63].

30 -~.1

400 ISS Alttitude Before Event ISS Altitude During Event - ISS Altitude After Event 395 -_---_---_-_-_--_--_-_-_-_-_-_-

390--

385

380 -

375

370

Date/lime (UTC)

Figure 2-6: The International Space Station altitude during the Halloween storms of 2003 [63]

As a perturbation, drag causes secular changes in a, e, and i. It also causes periodic changes in all of the classic orbital elements. Estimating the drag force is important for orbit propagation, but it can also be used as a control force because it is dependent on the area profile of the satellite. Most satellites are asymmetrical, so their attitude can be commanded to change with the goal of adjusting the drag force. This is the basis of differential drag control, which will be discussed further in

Section 2.8. Drag effects on the altitude of a LEO CubeSat with different profile areas based on attitude are shown in 2-7. The high-drag area, 0.09 m2, corresponds to the

maximum profile area of a 3U CubeSat with single-deployable wing style solar panels,

such as the one shown in Figure 2-8, and the minimum area, 0.01 m2 , corresponds to

the minimum profile area of the same satellite.

31 2 High Drag Profile (0.09 m Medium Drag Profile (0.05 m 500 2 Low Drag Profile (0.01 m

450

- 400

0350

300

250

200

150 -- 0 200 400 600 800 1000 1200 1400 1600 1800 Time [days]

Figure 2-7: Orbit lifetimes for LEO satellites with different drag profiles

Figure 2-8: The Surrey Training, Research, and Nanosatellite Demonstrator: A 3U CubeSat with single-deployable solar panels [64]

Solar Radiation Pressure

Solar radiation pressure (SRP) is another perturbation, but it is relatively minor for LEO CubeSats. At Earth, the solar flux is often approximated by 1367 y. Photons carry momentum, p, as given in Equation 2.6 where h is Planck's constant and A is the frequency, so they can transfer momentum to a satellite and exert a force. This is the working principle behind solar sail concepts.

32 h P = - (2.6)

The force from solar radiation pressure, FSRP, is given by Equation 2.7 where c is the speed of light, 3 x 108 m/s, PSRP = SolarFlux, A is area exposed to the sun, and

CR is the reflectivity (varying from 0 to 2) [53]. At 500 km altitude, drag is typically an order of magnitude or more stronger than SRP, but this can vary depending on conditions [12]. As altitude increases and drag becomes less significant, SRP can become the dominant perturbation next to Earth's nonsphericity.

SR _ - PSRPCRA isat FSRP sat (2.7) rnTsat

Other Perturbations

Third bodies can also exert perturbing forces on satellites. These effects are most significant for high-altitude satellites and are the cause of phenomena such

as the Lagrange points. However, for the purposes of LEO satellites, third body

perturbations are small relative to those of drag and Earth's nonsphericity. Tides

(both solid and liquid) and magnetic field forces are also perturbations, but they are

not considered in this thesis. The major perturbing forces by altitude are shown in

Figure 2-9.

33 ~11-1"17-I

1 Piwim~E1 MWAAPAb

0

S-2

-4 Lunar gravity J Solar gavity -6

~ -~ SRP

-10 Drag

0 500 1000 15MM 20M1 Spacecraft altitude (km)

Figure 2-9: Effect of disturbing forces by altitude [12]

2.2.3 Gauss's Variational Equations

There are several quantitative ways to describe how perturbations change an orbit. One way is to use the Lagrange's planetary equations. These show the time derivative of each of the orbital elements due to conservative perturbations such as J2. In these equations, R is the negative of disturbing potential. As shown in Table 2.1, J2 is three orders of magnitude stronger than the other spherical harmonics, so it is often the only perturbation considered. Lagrange's planetary equations are shown in Equation 2.8 [53].

34 da 2 DR dt ~na M de 1-e2DR V1-e2 aR dt na2 e OM na2e aw di 1 . . i R 2 2 dt na 1 _e sini [.9(28 dw _ 1 - e2 aR coti OR dt na2e De na2 1 _ e2 Di dQ 1 OR dt na/ -e 2 sin i Di dM 1 - e2 OR 2 OR dt na e Oe ma Oa

Lagrange's planetary equations are often used for showing how osculating ele- ments, the orbital elements at a single point in time, change over time due to conser- vative perturbations such as Earth's nonsphericity. However, drag is not a conserva- tive force, so Lagrange's planetary equations cannot be used to determine how drag affects orbital elements. For LEO satellites, this is a significant limitation. Another common way to analyze the effects of perturbations on orbital elements is to use Gauss's Variational Equations (GVE). GVE have an advantage in that they are equally valid for both conservative and nonconservative forces. GVE show the time derivative of each of the orbital elements and how they relate to accelerations on the satellite in the LVLH frame. u, is radial acceleration (pointing away from Earth), uo is tangential acceleration (pointing in the direction of motion), and Uh is the cross- track acceleration (aligned with the angular momentum vector). GVE use a few intermediate variables related to the orbit. p is the semi-latus rectum, which is half the chord length through the focus of the conic section. b is the semiminor axis. 0 is the argument of latitude. h is the angular momentum, which is the cross product of the position and velocity vectors (r and v, respectively). Gauss's Variational Equations are shown in Equation 2.9 [65].

35 2 2 2a esinf 2a p a 0 h rh 0

e 0 psinfh (p+r)cosh f+re 0 d i 0 0 0 rcos0 - = +UO (2.9) dtG 0 0 0 "rsin hsini

Li 0 p cos f (p+r)sin f r sin 6? cos i . he he hsini M n b(pcos f-2re) b(p+r) sin f 0 . . _ _ _ ahe ahe GVE can be used to determine the effect on the orbital elements of a thrust maneuver on the orbital elements or the effect of some perturbations such as drag. For example, it can be seen that drag mostly acts as an acceleration in the -uo direction, which tends to reduce the semi-major axis. While there are other techniques to describe how perturbations affect spacecraft orbits, GVE are useful for constellations of widely separated spacecraft because GVE are expressed in a curvilinear frame and are linearized about the orbital elements [65]. A curvilinear frame is not necessary for formation flight missions, where satellites are close, within about 100 m, of each other. It is also relatively computationally efficient to express a constellation in terms of classic orbital elements [65].

2.2.4 Mean Orbital Elements

Some orbit definitions are more useful than others for describing relative satellite positions. GPS receivers typically yield position and velocity in the ECEF frame, but position and velocity are hard to use to describe relative motion because they experience large changes on short time scales. The classic orbital elements are more intuitive and useful for describing relative satellite positions when separation distances are large. However, both sets of elements fully describe the state of a satellite, and it is straightforward to convert between them.

Still, because orbital elements constantly change due to perturbations, their defi- nitions can become unclear. Osculating elements are the orbital elements defined at a single point in time. With perturbations, these will vary periodically and secularly.

Mean orbital elements are time-averaged to remove periodic effects. Osculating ele-

36 ments can be averaged over an orbital period to remove short-term effects or over an apsidal rotation to remove long-term terms. For certain applications, the averaging can be important. For example, using orbital elements for constellation management or formation flight, the periodic terms can be wasteful in terms of fuel. Satellites would periodically make corrections due to the short-term periodic variations in or- bital element error. For most applications, this is unnecessary; secular changes are generally the ones that need to be captured. For example, if it is desired that the semi-major axes of two satellites be the same in order to match orbital periods and maintain their angular separation distance, short terms should be omitted because the semi-major axis has large variations over the orbital period. Depending on the exact situation, long terms may also not be desired. The difference between the mean and osculating semi-major axis for a LEO satellite over the course of six months is shown in Figure 2-10. It can be seen that the changes in the osculating semi-major axis are large and have a short period.

Semi-Major Axis 7045 Oscultng Semi-ajor Axis 7040 Mean Semi-Major AxIs

E 7035

7030

7025

6 7020

7015

7010 0 20 40 60 80 100 120 140 160 180 Time (days)

Figure 2-10: Osculating and mean semi-major axis for a LEO satellite

There are multiple ways to define and determine mean orbital elements. When

37 applying them, consistency is important due to differing assumptions for different theories. One technique is Kozai's method, which accounts for the effects of J2 - J5 [66, 53]. Another theory was proposed by Brouwer which uses canonical transformations to obtain mean elements [67]. Both theories are valid, but their assumptions differ, and different theories should not be mixed [53]. Brouwer's technique is used in this work.

2.2.5 Clohessy-Wiltshire Equations

For satellites in formation flight, which involves multiple satellites working in close proximity in a coordinated effort to accomplish a larger objective, the relative motion of the satellites is often more important than the motion of the group. The close proximity is what differentiates formation flight from other constellations. The

Clohessy-Wiltshire (CW) equations, also known as Hill's equations, are often used to

describe this relative motion. One satellite is designated as the target (or primary) satellite, and the others are considered interceptor (or secondary) satellites. The

LVLH coordinate system, also known as the RSW coordinate system, described in

Section 2.2.1 is used. The CW equations are linearized, so the x-axis, y-axis, and z-

axis correspond with the R, S, and W axes, respectively. Orbits all exhibit curvilinear motion, but on a small scale (such as below 100 meters), relative positions in the RSW coordinate frame can be approximated as linear. Additionally, the CW equations involve an approximation that is only valid for circular orbits.

Both of these limitations are important. The first approximation means that the equations are not valid for satellites with large separation distances. For a mission involving maximum-separation distances, the CW equations are invalid. Addition- ally, these basic equations assume a circular orbit, though several variations of the equations exist. The equations of relative motion, which have a closed-form solution,.

are given in Equations 2.10, 2.11, and 2.12 [53, 68]. The CW equations use the LVLH reference frame, which is shown in Figure 2-11.

. = 3n x + 2ny (2.10)

38 = -2ni: (2.11)

-n2z (2.12)

Figure 2-11: LVLH frame of reference (y is in the direction of the velocity vector) [69]

While the CW equations have been shown to be effective for formation flight and rendezvous missions, the necessary approximations make it infeasible for constella- tions where separation distances are large. Relative motion can be better expressed using mean orbital elements in such situations. Additionally, GVE can be used to describe the motion of the spacecraft from perturbations or maneuvers. Although formation flying missions are not uncommon for CubeSats, the majority of multi- nanosatellite missions involve constellations with separation distances over 1 km. [70, 71].

2.3 Propulsion

- One way spacecraft change their orbits is through the use of propulsion systems.

The most common systems are cold gas, monopropellant, bipropellant, solid propel- lant, electric propulsion, and ion propulsion. Hot thrusters such as monopropellant, bipropellant, and solid propellant generally provide high thrust, but their specific impulse tends to be low. Specific impulse, Ip,, is the total impulse per unit weight of propellant consumed, and it is a measure of efficiency [12]. The equation for specific

39 impulse is given in Equation 2.13 where I is total impulse, mp is the mass of the propellant, and g, is acceleration on Earth from gravity. Specific impulse is given in units of seconds. There is a tradeoff between thrust and specific impulse. For example, solid rocket propellant provides a lot of thrust, and this is necessary to get a rocket into space; however, its specific impulse is low. Conversely, ionic propellant tends to provide very little thrust, and it would be unable to get a rocket off the ground, but it is efficient for spacecraft already in space because it has a high specific impulse.

ISp= (2.13)

Including a propulsion system on any satellite has mass, volume, power, and cost impacts. However, for larger satellites, the relative effect of these impacts tends to be less. As discussed in Chapter 1, CubeSats have very strict mass, volume, and power constraints, so many do not fly with a propulsion system.

Several propulsion systems specifically designed for CubeSats exist. Cold gas thrusters are able to provide tens of meters per second of delta-V for a CubeSat

[5, 6, 7, 8, 9]. Electric propulsion systems also exist and can provide up to 100 m/s of delta-V [6, 9, 11]. Hot monopropellants have also been explored and would provide the most thrust, but they have low I, and the highest power requirements [9, 101. Cold gas and electric systems are more efficient, but they still add complexity and require the use of limited resources. The decision of whether to add a propulsion system or not is far from trivial, and in many cases, CubeSats can perform their mission successfully without it. In situations where relative positions within an orbital plane in LEO must be changed, differential drag can be a viable option. In other situations, such as interplanetary missidns, orbit raising, or orbital plane changes, propulsion is' necessary.

40 2.4 Global Positioning System

The Global Positioning System (GPS) was introduced briefly in Chapter 1, but this section will focus more on the practicalities of using it and expected performance for small satellites in LEO. In order for a satellite to receive its position and velocity from the GPS, it needs to be receiving information from at least 4 GPS satellites.

Three are needed to determine position, and the fourth is needed to obtain precise timing information [54]. GPS signals carry the information necessary for a satellite to determine its position, velocity, and time. Generally these are given in the ECEF frame of reference, but this can be easily converted to other frames, if necessary.

While GPS is often very accurate, there are still errors, and their magnitude can vary in different situations. In high orbits, tropospheric and ionospheric delay of signal can be ignored, but these can still create errors for single-frequency GPS receivers in LEO [72]. However, there also exist errors from inaccurate GPS ephemeris data, multipath effects, superimposed pseudorandom noise, satellite clock errors, and receiver noise [53, 54]. Geometric dilution of precision (GDOP) comes from the geometry of the user and the GPS satellites. If the GPS satellites are close together from the perspective of the receiver, there will be more GDOP than if the GPS satellites were spread out. GDOP changes the expected error of GPS data.

Global averages on the ground are generally about 2.5, but LEO satellites have been shown to experience GDOP well under 2.0 [54, 72]. On the ground, a common error model uses one-sigma horizontal errors of 10.2 m (horizontal dilution of precision

= 2.0) and one-sigma vertical errors of 12.8 (vertical dilution of precision = 2.5). In space, these errors can be expected to be reduced slightly [54]. In this research, position errors were modeled as Gaussian -zero-mean with a one-sigma error of 10 m, and velocity errors can be modeled as Gaussian zero-mean with a one-sigma error of 0.1 m/s [54, 72, 73, 74, 75].

41 2.5 Two-Line Elements

Two-Line Elements (TLEs) are another way satellites can determine their orbits. These are publicly available through Air Force Space Command (AFSPC). TLEs give the following information, where a bar indicates the Kozai mean value and density is given at perigee:

eQ

eMa

Si

B* = pRE * Coordinated Universal Time (UTC)

TLEs are useful for satellites lacking other methods of orbit determination, and they can often be used for initial orbit determination, but errors can be over a kilome- ter, which makes them an inadequate method of precise orbit determination [53, 18]. With the proper hardware, two-way time-of-flight ranging measurements can also be used for orbit determination. This is one of the techniques employed by Planet [18] with 650 meter one-sigma accuracy. However, this is still less accurate than utilizing a GPS receiver.

2.6 Orbit Estimation

GPS receivers often give the position and velocity of the satellite in the ECEF reference frame at a given time. However, this representation of the state is difficult to use for controlling satellites that are far apart from each other. It is a relatively straightforward process to convert position and velocity to the six orbital elements.

42 David Vallado has code available online to make this conversion (RV2COE), and the process is described in detail in his book [47, 76]. However, this conversion yields osculating orbital elements, which are not appro- priate for all applications. For differential drag control, the force acts over such long periods of time that mean orbital elements are preferred. Another conversion is nec- essary to change from osculating to mean orbital elements. As mentioned in 2.2.4, there are several different ways to make this conversion. J2 is the most important perturbing force, and it is often enough to account for to obtain mean elements. The state of a satellite in its orbit is given by a time and six orbital elements, which can be represented in numerous ways. This focus of this thesis is on the six Classical Orbital Elements (COE). However, when measurements of the state, such as those from TLEs or GPS receivers have uncertainty, which is always the case, the cor- responding state will also have uncertainty. In these situations, converting from the raw measurements to the corresponding state is considered unfiltered. In general, this is not as accurate as using an estimation technique. For example, Figure 2-12 illus- trates how estimation improves upon unfiltered, raw measurement conversions. The unfiltered measurements are conversions from simulated noisy GPS receiver measure- ments with 10 m standard deviation position and 0.1 m/s velocity standard deviation. The estimated semi-major axis (using an unscented Kalman filter in this case) has smaller errors than the unfiltered state measurements. For missions requiring precise orbit determination, such as those using differential drag, estimation is crucial. In Figure 2-12, the truth semi-major axis from STK also has some oscillations, which is due to the difficulty in defining it as a mean orbital element.

43 Semi-Major Axis 7007 Truth - - Estimated 7006.8 Unfltered

E7006.6 - - ..

7006.4

7006

7005.8 0 0.5 1 1.5 2 2.5 Time [days]

Figure 2-12: Truth, estimated, and unfiltered semi-major axis

Estimation is the practice of obtaining the state with the highest probability given uncertain measurements and processes. There are several different ways of estimating a state. The most basic technique is least squares estimation for a linear system

[77, 78, 79]. In this thesis (and in estimation literature in general), x will be used to denote the true state, i is the estimated state, and y is used for measurements. H is the matrix that transforms the measurements into the state. For this system, the system of equations can be mathematically given as in Equation 2.14 where v denotes measurement noise.

y = Hx + v (2.14)

For such a system, the cost function, J, represents the square of the errors in the estimate. This is given in Equation 2.15.

J = (y - H.i)T(y - H.) (2.15)

For the best estimate, it is desired that the square of the errors be minimized.

44 As such, the partial derivative of J with respect to : is taken, which results in the following equation:

= YH - yTH + 2.HTH =0 (2.16)

Solving for -, the best estimate is given as:

- (HTH)-HTY (2.17)

The least squares estimate is also known as the Maximum Likelihood Estimate

(MLE) because it is the estimate that has the highest probability of being true. There are variations of the least squares estimate such as weighted least squares, recursive least squares, and batch estimation.

However, for systems with understood dynamics, discrete measurements over time, and the need for real-time estimation, a variation of the Kalman Filter (KF) is more appropriate than least squares estimation, though it is based on the same principles.

Constellation management through differential drag is a system where a real-time filter is appropriate [77, 78]. The basic KF yields the optimal estimate for linear systems. With each measurement, the mean and covariance are updated.

For the KF, there are two main steps: propagation and measurement update.

The state is propagated forward in time according to the dynamics of the system, and then the measurements are used to refine the state estimate. The subscript k denotes the discrete time step, and the superscripts - and + correspond to a priori and a posteriori, respectively. For a KF; the dynamics are given by Equation 2.18 where w corresponds to process noise and F incorporates the dynamics to propagate the state forward.

Xk = FklX1k_ + Wk-1 (2.18)

yA = HkXk +Vk (2.19)

45 w and v are zero-mean with covariance Q and R, respectively. From Equations 2.18 and 2.19, the Kalman filter must be initialized with a best guess for the state, 41 and covariance PO. Then, for each time step, the following equations are computed [77].

P Fk-Pk' lFk'j + Qk-1 = F_1F- Q:_1 kg = k-1_ Kk = P-H (HkP-H + R)- 1 (2.20)

P =-(I - KkHk)P S=:7-+ Kk(yk - Hk:-)

Unfortunately, many systems are nonlinear, and when that is the case, the stan- dard Kalman filter is not appropriate. There are numerous variations to adapt the Kalman filter to nonlinearities. A common one is the Extended Kalman Filter (EKF). The standard EKF accounts for nonlinearities by applying a first-order linearization on the most recent estimate. There are hundreds of variations of this, and their use is often times specific to the. problem at hand [80]. For highly nonlinear systems, the EKF often fails due to its linearization. Additionally, for some nonlinear functions, such as those present in real-world orbits, taking partial derivatives can be computa- tionally complex [53]. The EKF is not used in this research, so its implementation is not shown.

2.6.1 Unscented Kalman Filter

Another fairly common filter is the Unscented Kalman Filter (UKF). The UKF works by generating sigma points that capture the mean and covariance of the state. The sigma points are a set of deterministic vectors with an ensemble mean and covari- ance equal to that of the estimate [77]. n is the number of states in the system, and there are generally 2n + 1 sigma points. Each sigma point is propagated through the nonlinear system, and this Captures the mean and covariance accurately to the third

46 order. The computational complexity is on par with the EKF for most systems [81].

Additionally, although sigma points must be propagated through nonlinear functions, partial derivatives do not need to be calculated, and in some cases, this can make the UKF simpler than the EKF. The UKF is used in this research, so its general

implementation is shown below. First, sigma points must be generated. These are

based on the covariance, the number of states, and the composite scaling parameter, A.

A a2 (n+ K)- n (2.21)

a is the scaling parameter, which is often a small positive value (0.001 < a < 1),

and this determines the spread of sigma 'points. K is a secondary scaling parameter, often set to 0. # is another variable which gives information on the distribution of x. It is set to 2 for Gaussian distributions. A common recommendation is to have

A - N = 3 for systems with fewer than three states. For larger states, a common

recommendation is to have A = 0, which can be obtained when oz = I and K = 0

[82]. As is the case with the KF, the UKF must be initialized with an initial estimate

for the state and covariance. The sigma points, which are denoted with tilde, are

generated as given in Equation 2.22.

k-1 =(2,...,) i1k-= + (V(n + A)P,~ n

g1k-= - n+ A)Pk-ij)T Z =I,.. n

The subscript, i denotes the ith column of the matrix

The sigma points also have corresponding weights, given by Equation 2.23.

47 =i=O A A (0 O) = +(- +a (2.23)

WM= = I 2n 2(n + A) 1,-1

With the 2n + 1 sigma points generated, they can then be propagated through the nonlinear system, given by function f:

W f(Z Wk (2.24)

The sigma points are then combined to generate the a priori state estimate and covariance:

2n < 1 =W$2 (2.25) i=O

2n

k -C )k k - k~) + Qki1 (2.26) i=O

As with the Kalman filter, the next step is to incorporate the measurements into the estimate to generate the a posteriori estimate and covariance. At this point, the sigma points can be regenerated using the a priori state and covariance, but this is often not necessary, so using the same sigma points can reduce computational demands [77]. The predicted measurements, Q) are generated for each sigma point:

Qf = h( 1 , tk) (2.27)

As was the case with the a priori state, the predicted measurement is then deter- mined by combining the sigma point predicted measurements:

2n Yk Y,? w O(2.28) i=O The measurement covariance and the cross covariance must also be calculated as

48 shown in Equations 2.29 and 2.30.

2n

Pyy = : i(Qi - 9k)(9i - 9k)T + Rk_1 (2.29) i=O

2n PXY = wCO)Q - )(9 - 9k )T (2.30) i=o Finally, the Kalman gain, a posteriori state estimate, and a posteriori covariance can be calculated as shown in Equations 2.31, 2.32, and 2.33.

Kk = PxyPy (2.31)

k= ki + Kk(yk - ik) (2.32)

Pk = P- - KkPyy K' (2.33)

With most filtering applications, however, there are nuances that are often case- specific. For example, when the process is modeled improperly, the filter can diverge over time as it depends on the process more and on the measurements less. This is called filter smugness [53]. When this happens, one solution is to add artificial noise to the process, which can make estimates worse if too large, but if appropriately scaled, it can improve estimation accuracy. Another solution is to implement a fading-memory filter [77]. This involves multiplying a memory fading term, A 2 , that increases the a priori covariance. Another difficulty of implementing an UKF is that process noise can be difficult to model accurately. A potential solution to UKF implementation for unknown conditions or noise levels is to make the UKF adaptive and actively estimate the process and noise covariances [83]. Chapter 3 will explore the specifics of the UKF employed in this research.

2.7 Attitude Determination and Control

When using differential drag to control the relative positions of satellites, the attitude of the satellite is what changes the relative orbits. Being able to estimate

49 and control the attitude is required for a constellation that only employs differential drag for orbit control. Satellites generally must first estimate their attitude using sensors, and then, the attitude can be controlled to the desired orientation.

2.7.1 Sensors

Common sensors for attitude determination include sun sensors, Earth Horizon

Sensor (EHS), magnetometers, Inertial Measurement Unit (IMU), differential GPS, Radio Frequency (RF) beacons, and trackers [12]. Often times, several sensors are used and then the measurements are processed through an algorithm such as Black's

TRIAD or Shuster's QUEST algorithms to yield a maximum-likelihood estimate of the attitude [84, 85]. The attitude estimate can then be estimated in near real-time by using a nonlinear filter to further improve performance. Small satellites most com- monly utilize IMUs, EHS, magnetometers, and sun sensors as attitude determination sensors [41]. However, IMUs drift with time, and the other sensors cannot provide an attitude estimate on their own since they only provide a single reference vector

(orientation about that vector remains unknown). For example, the Microwave Ra- diometer Technology Acceleration (MiRaTA) has a mission requirement of 1 degree

(lo-) attitude estimation and 2.5 degrees (1a) control. For estimation, MiRaTA uses three EHS suites, six coarse sun sensors, an IMU, and a magnetometer [86]. The sensor measurements are then processed through the TRIAD algorithm and filtered using an extended Kalman filter. Star trackers are another approach for attitude es- timation, and they have a key advantage in that they are able to provide an attitude estimate without any other sensor measurements [87]. They can be expensive and tend to be rare on small satellites, but they do exist, and nanosatellite star trackers have been proven to estimate attitude with accuracies of about 10 arcseconds [88, 89].

2.7.2 Actuators

Once the attitude is estimated, the attitude can be controlled using an actuator.

Actuators on CubeSats include thrusters, reaction wheels, and magnetic torque rods.

50

, - , "W-1- ...... Passive control mechanisms can include magnetic control to slow the tumbling rate and give limited control, but they do not give full controllability. For precise control of small satellites, reaction wheels are most common actuators. The MiRaTA CubeSat has three orthogonal reaction wheels and three orthogonal magnetic torque rods. The reaction wheels are used for attitude control and the magnetic torque rods are used for detumbling and for preventing saturation of the reaction wheels [86]. There is also a software component of attitude control. Control is often achieved through the use of a Proportional Derivative (PD) or a Proportional Integral Deriva- tive (PID) algorithm. These produce an actuator command that is proportional to the error itself, the derivative of the error, and the integral of the error [12]. The at- titude is often expressed in quaternions rather than Euler angles or a direction cosine matrix for computational simplicity and because it lacks singularities. Figure 2-13 shows the typical flow of information and the dynamics of an attitude determination and control system [90].

Software Hardare mpleentaionEnvironmental Implementation Hardware Implementat Disturbances Control Actuators Desired - PID Controller * Reaction Wheels Attitude Actual Magnetorquers Spacecraft Attitude Dynamics

Estimators EKF Sensors -eTRIAD ___'Sun Sensors -Propagator -Star Tracker -IMU -Magnetometer

Noise

Figure 2-13: An ADCS block diagram [90]

2.7.3 CubeSat Performance

CubeSat attitude determination and control performance can meet or exceed the requirements to control a satellite's drag profile. While early CubeSats often lacked

51 active attitude control systems, over 80% of recent CubeSats have active control sys- tems [26]. On the MinXSS CubeSat, Blue Canyon Technologies' XACT, an integrated

CubeSat attitude determination and control system, achieved below 10 arcsecond pointing capabilities about two axes, and 16 arcsecond pointing capabilities about the third axis [91]. Through Boeing's CubeSat TestBed 1 on-orbit experiment, a

CubeSat was able to consistently keep attitude errors below 5 degrees in test and 2.2 degree in estimation on-orbit using only sun sensors and magnetometers, which are relatively cheap and small sensors [92]. The Bright-star Target Explorer CubeSats were able to achieve 1 arc-minute root-mean square pointing error [71]. A 2016 survey on ADCS on CubeSats claimed that sub-degree pointing accuracy and slew rates over

10 degrees per second are possible with state-of-the-art attitude control systems [26].

Overall, CubeSats have demonstrated sufficient attitude control to be able to employ differential drag as an orbit control technique.

2.8 Orbit Control through Differential Drag

Differential drag describes using different magnitudes of drag forces to control the relative position of satellites in LEO. This was first shown as feasible for CubeSats by The Aerospace Corporation with the AeroCube-4 CubeSats in a mission where satellites had their positions separated and then closed using differential drag [8].

The drag equation is given in Equation 2.4. In this equation, the most controllable variable is A, the satellite's profile area, which is done through attitude control. There are also concepts that could enable satellites to change their profile area through ac- tuated flaps, which could remove the need to change attitude [93]. Most satellites are not symmetric, so their profile area, and hence the drag force operating on them, can be controlled within certain bounds. The profile area responds to changes in orien- tation according to trigonometry, and this is relatively insensitive to small attitude changes. The precise attitude control needed for some Earth observation missions is well beyond what is required for differential drag control.

As discussed in Section 2.2.3, orbital elements can be changed in known ways

52

-- 1 ...... 111111111 ' -- - - , -T,---"FT MM TVIW -- -11" through different forces. By understanding the physics behind the drag force and its effect on a satellite's orbit and controlling the attitude of a satellite, the orbit of a satellite can be manipulated. The changes due to drag are generally small, but they can be significant enough, especially over time, to implement certain constellations. Although there is often a cross component to the drag force due to the atmosphere rotating with Earth, it is much less significant than the force operating in the direction opposite of the velocity vector. Most CubeSats launched to date would have the ability to utilize differential drag [26]. The requirements are an active control system, an appropriate orbit altitude, and an asymmetric form. Over three-fourths of CubeSats are below 700 km altitude, and over 80% have active attitude control systems [26]. CubeSat altitudes are shown in Figure 2-14. 3U CubeSats are also the most common forim factor, and nearly all CubeSats other than 1U forms without deployable solar panels would have sufficient asymmetries.

140 - -

[ZJFlock Constlab

120

116 (%27)

100

80

40

4

18 11 (0/63) 10(%21 2 3(%0.7)

100-199 200-249 250-299 300-349 350-399 400-499 500-599 600-699 700-799 800-900 Altitude [kM]

Figu re 2-14: CubeSat. altitudes [26]

As can be seen from Equation 2.9, an acceleration in the tangential direction can affect the semi-major axis, eccentricity, argument of perigee, and mean anomaly of a spacecraft. For near-circular orbits, the changes in eccentricity and argument of

53 . perigee can often be ignored. The rate of change in mean anomaly is related to the change in semi-major axis; as the semi-major axis is reduced from the drag force, the rate of change of mean anomaly will increase as the mean motion also increases.

These dynamics are the foundation of changing relative orbits through differential drag.

A satellite can increase its mean anomaly relative to another satellite by decreasing its semi-major axis more by orientating itself such that it experiences higher drag forces. Later, the other satellite can orient itself in a high-drag attitude to match the leading satellite's semi-major axis. If the semi-major- axes are the same, the angular difference between the two satellites will also remain the same over time. This process is shown for a simple two-satellite case in Figure 2-15.

54

...... F 1

2) Fdrag,2> Fdrag,1, so Sat 2's 1) Fdrag2 = Fdrag,1, and the semi-major axis will semi-major axes match, so decrease more than Sat 1's, the satellites will maintain and the angle between the their angular separation satellites will increase

4) As the desired separation angle is achieved, Sat 1 can 3) The separation angle enter the high-drag increases because Sat 2 is configuration to match the in a lower orbit semi-major axis of Sat 2

5) Fdrag, 2 = Fdrag,i, and the semi-major axes are the same, so the satellites will maintain angular separation

Figure 2-15: Simple satellite separation using differential drag

55 Differential drag has been shown to be possible, and it has been applied to actual satellite constellations. However, the specific details of the estimation and control tend to vary. There has been more research on formation flight and rendezvous through differential drag than on maximum separation missions, but the literature shows that formation flight is possible, with constraints, through differential drag techniques [13, 14, 15]. For maximum separation missions, the literature is more sparse. AeroCube-4 was' the first CubeSat to demonstrate the feasibility of using differential drag for relative satellite control. However, the mission simply involved separating satellites and then closing their distance; it did not involve precise control [8, 16]. Sammy Omar explored this technique and used differential drag in simulation in a simple model using two satellites [17]. Planet (formerly Planet Labs) has actually implemented differential drag techniques to separate their constellation of CubeSats, but the algorithm used has ambiguities, is not completely autonomous, and it does not minimize implemen- tation time [18]. Planet has also done work on maximizing satellite utility (usable lifetime) through differential drag, though the model used circular orbits with con- stant density profiles, and solutions were suboptimal under conditions with added

perturbations [19]. In all of these papers, the research is either not comprehensive, or it is under simplistic conditions that do not match reality well. The goal of this work is to provide a more complete analysis of differential drag for autonomous orbit

control of CubeSat constellations in realistic conditions.

56 Chapter 3

Modeling and Simulation Approach

3.1 Chapter Overview

While every constellation is different, the principles in this paper can be applied to a variety of missions and initial conditions. The first case study uses a deployer that deploys each of the eight satellites a different initial state. The second scenario uses four satellites starting with the same initial state. The third scenario uses an elliptical sun-synchronous orbit with four satellites starting from the same initial state. Case

4 simulates Planet's on orbit implementation of the 10 CubeSats in Flock 1-C, which gives a real-world example as a comparison to the simulation. Although these case studies by no means show all possible cases, they cover differing initial conditions, eccentric orbits, and standard orbits. This variety of cases lends confidence that the algorithms used in this research could be extended to more cases. The desired end state for all cases is that the satellites are maximally separated within their orbital plane.

3.2 Simulation Overview

The simulation uses Mathworks' MATLAB program and Analytical Graphic's Sys- tems Tool Kit (STK) [94, 95]. STK is used for the orbit propagation, and MATLAB is used for setting conditions, estimation, control, and analysis. A block diagram of

57 the simulation approach and structure is shown in Figure 3-1.

MATLAB Relative Semi-

______Major Axes and UKF (on-board State Estimate Ground Station Mean Anomalies satellite Knowledge Controller

GPS Receiver Drag Profile Noise

Position, Velocity, Ground STK Station Contacts-- Propagates Orbits (H POP}

Figure 3-1: High-level block diagram of simulation

3.2.1 Orbit Propagation

Within STK, there are several different methods of orbit propagation, each with their own advantages and disadvantages. For this simulation, STK's High Precision

Orbit Propagator (HPOP) is used. This propagator numerically integrates the equa- tions of motion based on the modeled forces. HPOP was selected because it allows for the highest amount of customization and for its precision. In this simulation, atmospheric drag, third-body effects, and Earth's nonsphericity are considered as perturbations.

One drawback of STK is that the drag profile is not calculated from the satellite model. Instead, it must be entered manually. While this is a limitation, it is as- sumed to still match reality closely for several reasons. As discussed in Section 2.7.3, CubeSats have achieved sub-degree pointing accuracy, and slew rates can exceed 10 degrees per second. The drag profile is also relatively insensitive to attitude errors.

For example, if a 3U CubeSat with double deployed solar panels is seen from the front as shown in 3-2, where its profile area is maximized, the area is about 0.1500 m2 , and if it is rotated by 5 degrees as shown in 3-2, the area is about 0.1494 n2

Although the numbers vary based on the configuration, the changes in profile area are

58 -4

dependent on trigonometry, and they do not change drastically with small pointing errors, especially sub-degree errors.

2 (a) 3U Satellite from Front (A = 0.1500 in ) (b) 3U Satellite with 5 degree rotation (A 2 0.1494 m )

Figure 3-2: Satellite drag profile comparison

Slewing between different drag profiles occurs instantaneously in the simulation.

This is because the interaction between MATLAB and STK happens in steps, and be- cause the drag profile in STK must be set manually. While imperfect, this assumption is reasonable and will not greatly affect results because CubeSats can achieve high slew rates and because the timescales over which differential drag has a noticeable effect are large.

STK is also used to determine ground station contacts for each satellite. It is unlikely that the satellites would have the ability to communicate directly with each other, so they must downlink their information to the ground station, and then the ground station must uplink its most recent knowledge of each satellite when they pass over. STK is used to determine when a satellite was able to make contact with a ground station. This is based on whether there is a clear line-of-sight between the satellite and ground station for simplicity. The simulation assumes that the CubeSat has enough transmitted power and the ground station has enough receive gain to close a link. The communications details are not relevant to the differential drag focus of this work. As will be shown in Section 4, most constellations will take months to fully implement, and satellites typically can make contact at least once per day.

59 3.2.2 Simulation Parameters

The estimation, control, and ground station knowledge are handled in MATLAB for this simulation. From STK, each satellite receives a position and velocity in the ECI frame. In MATLAB, these vectors have noise added to them to simulate received measurements by the satellites. Based on the discussion in Subsection 2.4, the position noise is modeled to be Gaussian, zero-mean with a standard deviation of 10 meters. The velocity noise is modeled to be Gaussian, zero-mean with a standard deviation of 0.1 meters per second. With this information, each satellite estimates its own mean orbit, a process which will be described in more detail in 3.3. If a satellite passes over the ground station, it downlinks its most recent orbit estimate to the ground station, and the ground station uplinks an attitude command. The mean anomaly is the only orbital parameter that changes significantly on short- time scales, so each satellite's mean anomaly is propagated forward in time by the ground station according to the latest downlinked mean motion. The ground sta- tion uses the mean orbit estimates to run the control algorithm and uplink attitude commands to each satellite, as will be discussed in Section 3.4. STK was used in this case for its compatibility with MATLAB and accuracy in orbit propagation. Alternatives do exist, such as the program developed by Kareem Omar for orbit and attitude propagation [96]. This program would have the advantage of simulating attitude as well as the orbit, but it lacks the heritage that STK has. Additionally, in its current state, it does not allow for multiple satellites and ground station modeling. The time step for all cases was set at 864 seconds (one one-hundredth of a day). STK's time step for orbit propagation is 60 seconds, but MATLAB and STK only interact every 864 seconds. Atmospheric drag in STK is set using a Jacchia-Roberts model. The scenarios for Case 1, 2, and 3 begin at noon on July 30, 2013, which was chosen arbitrarily. Case 4 begins an August 26, 2014, which was chosen because it is the first date for which accurate orbit information is available for the simulated constellation.

60 3.3 Estimation

The estimator is run on-board each satellite and is then downlinked to the ground station when possible. The estimator for each satellite uses measurements in the form of noisy position and velocity (as obtained from GPS) and uses them to estimate the mean orbital elements. The state, x is given in Equation 3.1, and the measurement vector, y is given in Equation 3.2, where the positions and velocities are given in the ECI frame. While it is possible to use more information from the GPS signals for orbit estimation, only position and velocity are used in this work [97]. Distances are measured in kilometers, velocities in kilometers per second, and angles in degrees for the states.

x = (3.1)

ry

y =(3.2) vX

VY

vzj

An Unscented Kalman Filter is used in this case because there are two nonlinear transformations associated with the measurement prediction. The first is converting between position and velocity vectors and orbital elements, and the second involves converting between osculating and mean elements [76, 98]. While an EKF could be used for this, it is simpler to propagate the state through these nonlinear functions with an UKF because it treats them as a black box and does not require the calculation

61 of partial derivatives.

The UKF has two main steps: propagation and measurement update. The propa- gation step uses Gauss's Variational Equations for the semi-major axis, treating drag as an acceleration in the -uo (anti-tangential) direction. Density is required for this calculation, and it is determined based on a lookup table using the Standard 1976

US Atmosphere. Eccentricity and inclination change very little over time, so they are assumed to remain constant with fictitious noise to account for small changes. The change in RAAN uses Equation 2.2, and the change in the argument of perigee uses

Equation 2.3. Finally, the change in mean anomaly is given by the mean motion, n, which is a function of the estimated semi-major axis.

The UKF also must have a model for predicted measurements for the sigma points.

For this, two nonlinear functions are used. The first converts from mean to osculating elements, which is done using an open-source MATLAB function created by David

Eagle [98]. This function only accounts for J2. Vallado's open source code for con- verting from orbital elements to position and velocity vectors is then used to obtain the predicted measurements for the sigma points [76].

Although the general equations for a UKF are straightforward, implementing a filter can be more complicated. One common issue with filters is smugness. A smug filter is one that depends almost entirely on the process function and mostly ignores new measurements as the covariance decreases. There are two common ways to alleviate this problem, both of which sacrifice filter confidence in the estimate: making the filter memoryless or adding fictitious noise. A filter can be made memoryless by having a small scale factor applied to the process noise. This makes the filter trust the measurements more. Fictitious noise is artificial noise that is added to the propagated sigma points in the process function. This makes the filter more receptive to measurements, but if it is too high, the propagation through the process function can be inaccurate. It is generally used for variables that change very little over time

(inclination and eccentricity in this simulation). Implementing these techniques for a specific case can require some trial and error to tune them properly.

Another common issue is determining the amount of process noise. With fictitious

62 noise, this is relatively simple since the added artificial noise is set by the user, but in other situations, quantifying inaccuracies in the dynamics model is can be difficult, especially for orbits since there are so many factors.

For the UKF implemented in the scenarios for this research, the following param- eters were used:

r = 0.0 (3.3)

0Z = 1.0 (3.4)

# = 2.0 (3.5)

The step size for the simulation is set at 864 seconds, and the UKF performance deteriorates for significantly different step sizes. Fictitious noise is added to the inclination and eccentricity during the propagation step. The fictitious noise for the eccentricity and inclination are distributed according to a zero-mean Gaussian distribution given by wfictitious,e ~ N(0, 5 x 10-12) and wfictitious,i ~ N(0, 5 x 10-9) respectively. The process noise covariance used for this simulation is given in Equation 3.6.

1 x 10-7 0 0 0 0 0 0 5 x 10-12 0 0 0 0 0 0 5 x 10-9 0 0 0 (3.6) 0. 0 0 5 x 10-6 0 0 0 0 0 0 5 x 10-7 0 0 0 0 0 0 1 x 10-5

The measurement noise covariance is another parameter in the UKF. For this simulation, it is given in Equation 3.7.

63 0.01 0 0 0 0 0 0 0.01 0 0 0 0 0 0 0.01 0 0 0 R = (3.7) 0 0 0 0.0001 0 0 0 0 0 0 0.0001 0 0 0 0 0 0 0.0001

The filter implemented for this research also uses a fading memory. The fading memory term, A, is set at 1.02. The a priori covariance, P -, is modified as given in Equation 3.8.

Pk fade = A 2 p- (3.8)

The UKF is sensitive to changes in all of the parameters discussed: step size, pro- cess covariance, measurement covariance, fading memory term, and fictitious noise. These parameters are held constant over all cases.

3.4 Control

The controller in the simulation uses the relative mean semi-major axes and mean anomalies of the satellites to command each satellite to one of three possible attitudes: low-drag, medium-drag, or high-drag. This algorithm is based on one used success- fully on-orbit by Planet [18]. Both algorithms use the concept of a leader satellite. This is the satellite with the smallest mean semi-major axis, and the leader satellite's orbit is used as a common reference for the other satellites. For constellations with more. than two satellites, having a leader satellite improves the controller performance because each satellite can base its orbit off of the same one. Planet's algorithm assumes that all satellites start with different mean motions. From there, the algorithm determines when and how long to command the other satellites to a high-drag configuration such that their relative mean anomaly is as desired and their mean semi-major axis matches the leader's. The leader satellite

64

111.1111"", 1 1 1 1.-1- 1.11-1 IM 1 11 1 , '' k

holds a low-drag configuration during this procedure. Planet's algorithm is as follows [18]:

Planet Drag Control Algorithm

1. Procedure: Create high-drag Windows

2. Remove any previously issued high-drag windows

3. Compute 0j, 9% of each satellite i relative to previous leader (mean, not

osculating)

4. Compute 0 of a satellite in high-drag vs. low-drag mode

5. Assign leader to be satellite with greatest 0 (i.e. lowest altitude)

6. For each satellite i that is not the leader do

7. Offset Oj, 0, to be relative to new leader: Oi = Oi - Oleader, Oi =i - 0 leader 8. Get required high-drag duration to null relative speed with leader:

Ati,hd= tht d Atd

9. Get angle traveled during desired high-drag window: 0i,hd = 2 igh

10. Get wait time to target desired slot: Ati,wait = di

11. Create high-drag- window for satellite i starting at tnow + Ati,wait for

duration Ati,hd 12. End for

13. End procedure

This algorithm has worked on-orbit to place satellites in rough slots, but it has

some limitations. The biggest limitation is that there are some ambiguities. It is

unclear how the time derivatives in true anomaly are calculated. Difference equations

could be used in this case, but this can be sensitive to the estimate of true anomaly.

Another potential limitation is that the analysis depends on a Taylor approximation

for the angle traveled during the high-drag window, which could lead to some inac-

curacies, but the implementation results, shown in Figure 3-3, show the algorithm

to be fairly effective in constellation implementation. CubeSats 0908 and 090C were

commanded to be 2 degrees apart, but the others were intended to be equally-spaced.

The control is an improvement over what could be achieved without control, but the

65 satellites are not all equally spaced. For example, Doves 0906 and 0903 are closer to each other than they are to the other satellites.

Flock 1-C orbital spacing re ative to 090C vs. time 350

300 -090B

90D 250- ea 0904 200- a; 0906 W OQQ3 150-

Y ~090FJ e 100- 10907

0 090C

Figure 3-3: Planet's satellites' relative mean anomalies (blue lines represent high-drag windows) [18]

The algorithm requires some separation between satellites to get it started, and it is unclear what amount is appropriate. Larger separations would lead to faster implementation, but it is possible to make the separations too large or too small, depending on mission requirements. However, in Figure 3-3, it is clear that the the satellites began with different mean motions and that the algorithm successfully placed the satellites into rough slots.

The changes in true anomaly are nearly linear when a high-drag window is not issued. This is because the satellites are set to have different semi-major axes, and then they are set to have the same drag profile. This works when the satellites begin with different mean motions, but it could require more time to implement (though it would save on orbital energy) in cases where this initial separation did not exist.

Lastly, the algorithm does not account for satellites that move too far past their desired slot. If the calculated times are incorrect, a satellite will move beyond its

66 slot, and although small angular errors here are negligible for most operations, the

satellite's relative position must be corrected for manually by issuing a new high-drag

window to make that satellite the new leader. The algorithm does not address this

problem autonomously. This lack of autonomy is due to the leader satellite having the highest mean motion and the lowest drag profile at the same time. Despite these

limitations, this technique has worked to implement a real constellation, and it is

shown because the algorithm that is the focus of this thesis work is a modification of

Planet's algorithm.

The control algorithm used in this research uses three attitude configurations:

low, medium, and high. The low-drag profile is that which minimizes the drag profile

area, and the high-drag profile is that which maximizes the drag profile area. The

medium-drag profile is one that is somewhere in between the low and high-drag areas.

For this work, it is chosen as the midpoint between the low and high-drag profiles, but it can be any intermediate value. If orbital energy needs to be prioritized, it

should be chosen to be closer to the low-drag profile area. The algorithm used in this

thesis is shown below.

Thesis Drag Control Algorithm

1. Procedure: While managing constellation, do

2. Designate satellite with lowest orbital energy (smallest semi-major axis) as

the leader

3. Set leader satellite drag profile to medium

4. For each satellite i that is not the leader do

5. Compute difference in mean semi-major axes relative to the leader

satellite, aerror 6. Compute difference in mean anomaly relative the leader satellite and

assigned slot angle, 0 error 7. Calculate time to reach desired slot to = ertor nrelative 8. Calculate time required to match semi-major axis to that of the leader

satellite ta = ."r" &relative

67 9. if to > ta

10. Set drag profile to low

11. else if to < ta 12. Set drag profile to high 13. End if 14. End for 15. End while

The calculations in the algorithm are all conducted from the ground because it has the most recent knowledge of each satellite. Satellites downlink their most recent orbit estimates to the ground station, the ground station applies the algorithm, and then the ground station uplinks the attitude command to set the drag profile to either a low, medium, or high-drag profile area. If a satellite has not made contact with the ground, all orbital elements except mean anomaly are assumed to be the same. Mean anomaly is propagated forward in time according to the mean motion (based on the most recent estimate of semi-major axis).

A difficult aspect of this algorithm is calculating a. One possible way to do it is through direct calculation using the most recent orbit estimates and Gauss's

Variational Equations, as is used for the process function. However, the estimates vary and density and drag coefficient errors can cause additional errors in a. Due to the uncertainty in the estimate, the average change in the estimate for a over the last ten days (with the profile area factored out) is used to determine a. Ten days is chosen because the change in semi-major axis over the time period needs to be significant enough to obtain a reasonable value for &. With smaller profile areas or higher altitudes, longer time periods may be needed. The calculation of i is shown in Equation 3.9.

a = (3.9) Atime

68 3.5 Case Studies

For this simulation, four case studies are used. These case studies are chosen to be representative of realistic orbits while also demonstrating a range of initial conditions. A sensitivity analysis on the amount of time required to implement the constellation is also conducted for Case 2. The necessity for station keeping is also examined, once again using Case 2 as the example scenario. A key aspect of differential drag constellation implementation is the form factor of the satellites used. For Cases 1, 2, and 3, 3U CubeSats with double deployed solar panels are used. Case 4 assumes the same drag profiles possible with Planet's Doves for accurate comparison. Table 3.1 shows the high, medium, and low-drag profiles for the form factor used in Cases 1, 2, and 3. The medium-drag area can be set to any value between the low and high-drag, but this analysis assumes 0.08 in 2 . An example satellite that could achieve these drag areas is the MiRaTA satellite, which is shown in Figure 3-4 [99]. The high-drag configuration is such that the velocity vector is normal to the face shown in Figure 3-4. The low-drag configuration is such that the top face in Figure 3-4 is normal to the velocity vector. The medium-drag configuration would be in between the low and high-drag configurations.

69 Figure 3-4: The MiRaTA CubeSat [99]

Table 3.1: Case 1-3; Drag Configurations and Corresponding Profile Areas

Attitude Configuration Profile Area [m2 ] Low-drag 0.01 Medium-drag 0.08 High-drag 0.15

The metric used in research by Puig-Suari and Zohar to describe the spread of a

constellation is clusterness [100]. Clusterness, C, is given in Equation 3.10.

C = Zomax - ON)hI (3.10) (N - 1)Omax

The true anomaly separation between satellites N and N + 1 is ON, but this thesis

uses the mean anomaly separation since elliptical orbits are used in some of the case studies. For Case 4, which has a circular orbit, the argument of latitude is used.

Angle wrapping must be considered when using Equation 3.10. There are N angle differences if the angle between satellite 1 and satellite N is considered. The minimum

70 0 N - 1 of these N angles must be used in the equation. max is the difference in mean anomaly angle with perfect separation, given in Equation 3.11.

Omax - (3.11) N

If the satellites are perfectly distributed, the clusterness value is equal to 0. If the satellites are all in the same location, the clusterness will be equal to 1. Because the goal of the algorithms used in this research is to maximize separation distance, the clusterness value should be minimized. The mean anomaly and the semi-major axis values over time are also shown to present how the satellites distribute over time.

3.5.1 Case Study 1: NPSCuL 8-CubeSat Deployer

The Naval Postgraduate School CubeSat Launcher (NPSCuL) is a CubeSat de- ployer developed to integrate multiple P-POD systems into a single launch vehicle, and it has been used on an V launch vehicle. The NPSCuL is shown in Figure 3-5 [34].

71 Figure 3-5: The NPSCuL [34]

This deployer is used as the baseline for CubeSat separation analysis in research by

Jordi Puig-Suari and Guy Zohar [100]. Their analysis investigates how eight CubeSats

would separate over time with different deployment conditions from this deployer.

They also investigate how propulsion could be used to improve the separation of the CubeSats. This thesis uses the same case for differential drag analysis.

The eight satellites are deployed three minutes apart with separation velocities of

1.44 m/s at different angles from the deployer. The deployer initial orbit is shown in

Table 3.2, and the separation times, directions, and velocities from the deployer in the LVLH frame of reference are shown in Table 3.3.

72 Table 3.2: Case 1: Initial orbit of the NPSCuL 8-CubeSat Deployer [100]

Mean Orbital Element Value Semi-Major Axis 6903 km Eccentricity 0.0036 Inclination 51.6 degrees RAAN 0 degrees Arg. of Periapsis 0 degrees True Anomaly 0 degrees

Table 3.3: Deployment parameters from the NPSCuL (LVLH Frame)

Deployment Angle Separation CubeSat Deploy Time [min] . Velocity [m/s] (relative to +Y) [deg] X Y z 1 0 0 0 1.44 0 2 3 25.7 0.62 1.30 0 3 6 51.4 1.13 0.90 0 4 9 77.1 1.4 0.32 0 5 12 102.9 1.4 -0.32 0 6 15 128.6 1.13 -0.90 0 7 18 154.3 0.62 -1.30 0 8 21 180 0 -1.44 0

The separation velocities from the NPSCuL cause the initial orbital energies of the satellites to differ. The control algorithm closes the semi-major axes while placing each satellite in its commanded slot. There is no need to establish different mean motions in the beginning for Case 1. The ground station for this case is located at Wallops Island, VA.

3.5.2 Case Study 2: TROPICS Low Inclination Orbit

.The TROPICS mission seeks to provide microwave radiometer measurements over Earth's tropical regions with a short average revisit rate. Three orbital planes will be used in the TROPICS mission, but the separation within only one orbital plane is investigated in this thesis. Four satellites are assumed to be in each orbital plane.

The orbital parameters are given in Table 3.4.

73 Table 3.4: Case 2: Initial orbit for TROPICS Using a Single Orbit Plane (of the three planned planes in the mission) [3]

Mean Orbital Element Value Semi-Major Axis 6971 km Eccentricity 0.005 Inclination 30.0 degrees RAAN 0 degrees Arg. of Periapsis 0 degrees True Anomaly 0 degrees

Given the mission requirements, it is likely that TROPICS will use a small satellite

launch provider, such as Rocket Lab's Electron or Virgin Galactic's LauncherOne. In

recent years, with the continued growth in popularity of CubeSats, there has been

a corresponding growth in launch systems specifically designed for small satellites

[101, 102]. Such a launch system would be appropriate for a mission like TROPICS where multiple satellites must be placed into the same orbital plane.

However, for this differential drag analysis, the satellites are initialized with the

same conditions. In reality, there would be a small separation between them. Starting

the satellites with different initial conditions is tested in Cases 1 and 4, and those

results can be considered as well with a reference to a future updated study of Case 2, when more information is known about the launch vehicle and deployment sequence.

NASA's Near Earth Network ground station at South Point, Hawaii is used for Case 2 due to its low latitude.

3.5.3 Case Study 3: Polar, Elliptical Orbit

Case 1 uses the inclination of the ISS, and Case 2 uses a low inclination in order

to target the Earth's tropical regions, but many CubeSats have polar orbits. For

example, the MiRaTA CubeSat has an inclination of 97.2 degrees. The MiRaTA

CubeSat is scheduled to launch in the fall of 2017 with the Joint Polar Satellite

System 1 (JPSS-1) on a United Launch Alliance Delta-2 launch vehicle. The orbit is

an elliptical sun-synchronous orbit, which is given in Table 3.5 [103]. Unlike Cases 1 and 2, Case 3 has an elliptical orbit. However, the elliptical orbit does not significantly

74 change the estimation or control. For the other case studies, the true anomaly can be used as the sixth element in the state, but for elliptical orbits, the mean anomaly must be used. As is done for Case 2, the satellites will start with the same initial conditions.

Table 3.5: Case 3: Initial Polar, Elliptical Orbit

Mean Orbital Element Value Periapsis 450 km Apoapsis 810 km Semi-Major Axis 7008 km Eccentricity 0.0257 Inclination 98.7 degrees RAAN 0 degrees Arg. of Periapsis 0 degrees True Anomaly 0 degrees

The ground station for this case is located at Wallops Island, VA.

3.5.4 Case Study 4: Planet Flock 1-C Comparison

Case 4 serves as a comparison of the estimator and control algorithms used in this research and those used by Planet's Flock 1-C in implementing a constellation of 10 CubeSats, which Planet refers to as Doves. Planet has published the relative motions and makes their CubeSats' states publicly available [18, 104]. Precise orbit information from their deployment in July, 2014 is not known, so the initial state used for the Case 4 simulation is the position and velocity estimates on August 26, 2014, the first day for which data is available. In order to compare to Planet's differential drag results, the CubeSats analyzed are Doves 090B, 090C, 090D, 0903, 0904, 0905, 0906, 0907, 0908, and 0909. The initial orbital parameters for the Dove 090C CubeSat is shown in Table 3.6. The ground station is located at Brewster, Washington, where one of Planet's ground stations is located [105]. The CubeSats used for the simulation have the same minimum and maximum profile areas as Planet's Dove CubeSats, which are shown in Table 3.7.

75 Table 3.6: Case 4: Planet Flock 1-C Comparison (Dove 090C initial orbit) [104]

Mean Orbital Element Value Semi-Major Axis 6987.2.5 km Eccentricity 0.0025 Inclination 98.0 degrees RAAN 133.7 degrees Arg. of Periapsis 72.0 degrees Mean Anomaly 148.3 degrees

Table 3.7: Case 4: Drag configurations and corresponding profile areas

Attitude Configuration Profile Area [m 2 ] Low-drag 0.020 Medium-drag 0.100 High-drag 0.195

A key difference in the constellation implementation approach is that this thesis assumes GPS receivers are on-board each CubeSat, but Planet used a combination of TLE and two-way time-of-flight ranging measurements with a low speed transceiver [18]. Due to this difference, the estimation techniques are not directly compared. The focus of Case 4 is to compare differences in the effectiveness of the different control algorithms.

3.5.5 Sensitivity Study on Implementation Time

Results from the four case studies are presented in Chapter 4, and they show that differential drag is a feasible technique for constellation implementation. However, it is also necessary to know the timescales necessary for the differential drag approach. This is heavily dependent on altitude, so this thesis includes a treatment at several different altitudes. The orbit altitude of Case 2 is varied between 400 km and 700 km in increments of 50 km. All of the other orbital parameters are the same as in Case 2. Only two satellites are used for this analysis, so their desired separation angle is 180 degrees. This analysis focuses less on simulating realistic conditions; instead, it aims to un- derstand the expected implementation times. Because the satellite form factor is also

76 important to understand implementation time, two different satellite form factors are used, shown in Table 3.8. Form 1 models a satellite with single deployable solar pan- els. Form 2 models a satellite with double deployable solar panels, such as MiRaTA, which is shown in the deployed configuration in Figure 3-4.

Table 3.8: Implementation time drag configurations and corresponding profile areas

2 Attitude Configuration Form 1 Profile Area [in ] Form 2 Profile Area [M 2] Low-drag 0.01 0.01 Medium-drag 0.05 0.08 High-drag 0.09 0.15

3.5.6 Station Keeping After Implementation

The implementation time study and three orbit cases implement constellations using differential drag, but this approach can also be used to manage an already existing constellation. In general, if there is a small difference in mean semi-major axes between satellites, their relative mean anomalies will change over time. Perturbations can affect satellites in slightly different ways that build up over time. To analyze the effect of perturbations over time, Case 2 is used as a baseline. A constellation is implemented, and then all satellites are set to their low-drag configuration for 100 days. This is designed to simulate the science mission for the satellites. After 100 days, the control algorithm is applied again to reestablish the constellation.

3.6 Additional Considerations

The focus of this thesis is to investigate the effectiveness and feasibility of using differential drag to implement and manage satellite constellations, but there are other concerns that must be addressed in CubeSat missions. Each of these factors heavily depends on the specific satellite and mission, so they are not addressed in detail in this thesis.

77 3.6.1 Reaction Wheel Saturation

Attitude estimation and control enables differential drag control of relative orbits. Any constellation seeking to use this technique must have active attitude control.

When there is a consistent torque on a satellite, the reaction wheels can be saturated, which limits controllability. Magnetic torque rods can be used to counter the torque and prevent a buildup of reaction wheel speed. This is what the MiRaTA CubeSat uses [86]. When using differential drag, the attitude configurations may lead to a consistent torque from atmospheric drag. This is a problem that must be addressed, but it is a specific problem to each satellite because it depends on each drag configuration as well as the center of mass of the satellite. The hardware also is important for

determining a solution to this potential problem. For most near-symmetric satellites, changing the drag configurations slightly should be sufficient to make the torque close to zero or change the direction of the torque.

3.6.2 Orbit Lifetime

As was discussed in Subsection 2.8, using differential drag to control relative orbits is not free; orbital energy is the cost associated with this technique. Whenever a medium or high-drag configuration is used, orbital energy is reduced more than it would otherwise be with the low-drag configuration. Maximizing the usable lifetime was the focus of an optimal control algorithm used by Planet [19]. The algorithm shown in this thesis focuses on robustness and quick implementation, but it should not be used if the lifetime of the CubeSats would be reduced to below that of its required mission time. Setting the medium-drag profile area to a value closer to the low-drag profile area can help reduce the loss of orbital energy. Orbital lifetime also should be analyzed in a case-by-case basis, but the analysis done in this paper can serve as a starting point.

78 3.6.3 Power Generation

Power generation is also affected by using differential drag because power genera- tion depends on the orientation of the solar panels relative to the sun and the balance between power use and generation during the constellation implementation phases.

With regard to different drag profiles, keeping the surface area is key, but for most satellites, there are several ways to set the drag profiles. For the high and low-drag profiles, there will be a minimum of two possible orientations, and the satellite can rotate about its velocity vector without affecting the profile area. There is also free- dom in determining the drag configurations. Although three are generally needed, the only requirement is that they are all different. Using controllable flaps is a possible way to address the power generation without changing the attitude [93].

3.7 Chapter Summary

The chapter describes the four case studies, the additional sensitivity study on implementation time and form factor, and an overview of the differential drag ap- proach used in this thesis compared to that of Planet. Chapter 4 discusses the results for the case studies.

79 Chapter 4

Analysis and Results

4.1 Chapter Overview

For all four case studies described in Chapter 3, it is possible to successfully implement a constellation. A constellation implementation is considered successful when the clusterness remains below 0.005 for ten consecutive days. The organization of Chapter 4 starts with the estimation performance of Case 3 (Polar, Elliptical orbit). This orbit was chosen because it is eccentric, so its dynamics are more complex. Next, the results for each case study are shown. Clusterness, given in Equation 3.10, is the primary figure of merit for how well the constellation is implemented, but the semi- major axis and mean anomalies of each satellite relative to one another are also shown to provide additional detail on the constellation implementation.

4.2 UKF Performance for a Single CubeSat in Case

3: Polar, Elliptical Orbit

Differential drag control requires estimation of mean orbital elerients. The key elements are semi-major axis and mean anomaly for the control algorithm used in this research.

The UKF with parameters as defined in Chapter 3 estimates the mean semi-major

80 axis with la error of 50 m and the mean anomaly with la error of 0.07 degrees.

This performance is sufficient to use the control algorithm. The truth mean orbital elements oscillate, which can be attributed to numerical precision and limitations in the definitions of mean elements. For the mean semi-major axis, the oscillations have

an amplitude of about 150 m and the unfiltered la error is 190 m. This can be seen

in the Figure 4-1, which show the true, estimated, and unfiltered semi-major axis as

well as the estimation error. The estimation error tends to be less than 100 m, which is about the amount that the truth value oscillates. For the semi-major axis, the estimated value tends to be smoother than the truth value, which is beneficial for the controller since it has a better response to a smooth estimate over time.

Semi-Major Axis Semi-Major Axis Error

7008 Truth Est matd 7007.8 UnfItesd 100

7007.6 50

7007.4

7007 E 7006.8 -100

7006.6

7006.4 -0 1 2 3 4 5 6 7 a 10 1 2 3 4 5 6 7 8 9 10 9 Time [days] Time [days] (a) (b)

Figure 4-1: Estimation of the mean semi-major axis (Case 3: Polar, Elliptical Orbit)

Also evident in Figure 4-la is that the GPS noise (zero-mean Gaussian distribution with position error of 1a = 10 m and velocity error of la = 0.1 m/s) has a large effect on the mean semi-major axis corresponding to the measurements. While the mean semi-major axis values are centered about the mean, they can differ by 500 meters. The eccentricity in Case 3 decreases over time because differential drag circularizes orbits. This is because the drag force is strongest at perigee, where the density is highest and the velocity is also highest. This reduces the apogee, which reduces the eccentricity. The estimation of mean eccentricity can be seen in Figure 4-2a, and the error is in Figure 4-2b.

81 Eccentricity i0-1 Eccentricity Error -- 0.0258 -Trulh Esmated Unitered 00257 20

0.0256 10 0.0255

0.0254 8 wU 0.0253

0.0252

00251

1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 Time [days] Time [days] (a) (b)

Figure 4-2: Estimation of the mean eccentricity (Case 3:]Polar, Elliptical Orbit)

The inclination also has short-period oscillations over time, which the UKF tracks. However, the inclination changes by only 0.01 degrees over 10 days, and errors are consistently below 0.002 degrees. Inclination estimation results are shown in Figure 4-3.

Inclination Inclination Error 3 10-1 -Trut -Estirmted 98.71 -Uditemd. 2

98.708 1

98.706

: 98.704

98.702

-2

.3 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 Time [days] Time [days] (a) (b)

Figure 4-3: Estimation of the mean inclination (Case 3: Polar, Elliptical Orbit)

Shown in Figures 4-4a and 4-4b, the right ascension of the ascending node changes at a nearly constant rate, and the estimator tracks it with less than 0.005 degrees error. RAAN is also relatively insensitive to the GPS noise, which can be seen from the small spread of unfiltered points in Figure 4-4a.

82 Right Ascension of the Ascending Node 41_ Right Ascension of the Asconding Node Error 46.2 - -Truth -EsUnwrted 46 Urftered 6

4 45.8

U0 .2

45.4 -

45.2 -4

45 -6 0 01 02 0.3 04 0.5 06 07 08 0.9 1 0 1 2 3 4 5 6 7 8 9 10 Time [days] Time [days] (a) (b)

Figure 4-4: Estimation of the mean right ascension of the ascending node (Case 3: Polar, Elliptical Orbit)

Shown in Figures 4-5a and 4-5b, the argument of perigee changes at a near con- stant rate, but unlike the RAAN, it is more sensitive to the GPS noise. Despite this, the UKF tracks the value and errors remain at fractions of a degree.

Argument of Perigee Argument of Perigee Error 10.5 0.2 -Truth -Ea~nmaled 10 Urf-ted 015

9 0.05

8.5 -

8 .0 05

7.5 -0,

0 01 0.2 0.3 04 05 06 0.7 0.8 09 1 0 1 2 3 4 5 6 7 8 9 10 Time [days] Time [days] (a) (b)

Figure 4-5: Estimation of the mean argument of perigee (Case 3: Polar, Ellip- tical Orbit)

Lastly, shown in Figures 4-6a and 4-6b, the mean anomaly tracks well, and errors are well below one degree. The rate of change is nearly constant, but it increases as the semi-major axis decreases. The errors for the mean anomaly appear to be inversely correlated with the argument of perigee errors because the mean anomaly

83 is measured from the argument of perigee.

Mean Anomaly Mean Anomaly Error 400 -Truth 350 -Estiated Urffied 0.1 300 0,05

R,250

2150

-01 100

50 -0.1 5

-02 - 0 01 02 0.3 04 0. 06 0.7 0.8 09 1 0 1 2 3 4 5 6 7 8 9 10 Time [days] Time [days] (a) (b)

Figure 4-6: Estimation of the mean anomaly (Case 3: Polar, Elliptical Orbit)

The Root Mean Square Error (RMSE) of each of the estimated mean orbital elements and the unfiltered measurements for Case 3: Polar, Elliptical Orbit is shown in Table 4.1. Table 4.1: Root mean square errors (Case 3: Polar, Elliptical Orbit) Estimator Unfiltered Mean Orbital Element RMSE Value RMSE Value Semi-Major Axis 0.05 km 0.19 km Eccentricity 2.63 x 10-5 2.18 x 10-5 Inclination 9.63 x 10-4 degrees 5.19 x 10-4 degrees RAAN 1.20 x 10-3 degrees 5.49 x 10-4 degrees Arg. of Periapsis 0.05 degrees 0.05 degrees Mean Anomaly 0.07 degrees 0.05 degrees

The UKF reduces the RMSE for the mean semi-major axis from 190 m to 50 m.

The other orbital element estimates are less sensitive to the GPS noise, as evidenced by the low unfiltered RMSE values. For the controller used in this research, the estimates of mean semi-major axis and mean anomaly are the most important, and the significant improvement in mean semi-major axis estimates makes the filter useful for differential drag control, despite the lack of improvement for the other orbital elements.

84 4.3 Results for Case Study 1: NPSCuL 8-CubeSat

Deployer

For Case 1, which initializes the satellites with different conditions in the same orbital plane, the implementation is different than in Case Study 2 (TROPICS low- latitude orbit) and Case Study 3 (Polar, Elliptical Orbit). This is because the satel- lites already have a difference in semi-major axes, so their mean motion occurs at different rates, and their relative mean anomalies are changing from the start. The control algorithm addresses this by closing the semi-major axes in a manner that places each satellite in its proper slot. For this case, the satellites will change rela- tive positions over time without differential drag control, and Figure 4-7 shows the clusterness over time without any control. Figure 4-8 shows the clusterness with control.

Clusterness 1

0.9

0.8

0 0 0.7

0.6 C,, a,U, 0.5 a, U, 0.4 0 0.3

C', C-, 0.2

0.1

0 0 100 150 Time [Days]

Figure 4-7: Case 1: NPSCuL 8-CubeSat Deployer orbit clusterness (without control)

85 Clusterness

0.9 -

0.8

0.7

0.6 -

. 0.4

0.3

0.2

0.1

0 0 50 100 150 Time [Days]

Figure 4-8: Case 1: NPSCuL 8-CubeSat Deployer orbit clusterness (with con- trol)

Without control, the clusterness tends to decrease at first, but after that, it os- cillates as the relative mean anomalies continue changing linearly. With control, the clusterness decreases, dropping below 0.005 by day 113. While clusterness does in- crease some after day 50, that is because each satellite is being placed in its respective slot, which sometimes requires the mean anomalies to grow close to each other. The semi-major axes are shown in Figure 4-9, which shows that the semi-major axes match over time while changing in a manner that places each satellite in its corresponding slot. The relative mean anomalies are shown in Figure 4-10.

86 Truth Relative Semi Major Axis Relative to Satellite 1 1000

Sat 2 -1000 -_ 2 - Sat 3 ON- Sat 4 -2000 - Sat 5- -2-0-- Sat 6 --- Sat 7 0 __Sat8

E c-4000

-5000

-8000 0 50 100 150 Time [Days]

Figure 4-9: Case 1: NPSCuL 8-CubeSat Deployer relative semi-major axes (with control)

87 Truth Mean Anomaly Relative to Satellite 1 400 -SatI Sat 2 350 Sat 3 Sat4 3 0 0 -Sats -sat Sat 8 p 250 L st a

a200 E

0 / ~1000

50

01 - 0 50 100 150 Time [Days]

Figure 4-10: Case 1: NPSCuL 8-CubeSat Deployer relative mean anomalies (with control)

88 k

Because the control algorithm uses constant drag profiles, the change in semi- major axes tend to be linear. Small, rapid oscillations in the plot are due to oscillation of the truth mean semi-major axis itself while the larger, slower changes are due to the control algorithm. When placing CubeSats in their desired slots, the algorithm balances the time needed to match semi-major axes and the time to reach the desired relative mean anomaly. These times are generally large (several days or weeks), and inaccuracies in calculating either time appear as slower, rough changes in the semi- major axis. Despite these effects, the algorithm is successful in implementing the constellation. The relative mean anomalies change in a nonlinear fashion because the relative semi-major axes are also constantly changing.

Differential drag does come at a cost, and this can be seen in Table 4.2, which shows the orbital altitude of the controlled case vs the uncontrolled case. The orbital altitude is only shown for the satellite that started at the lowest altitude (Sat 8 in

Figures 4-9 and 4-10). At the end of the simulation, all satellites have roughly the same altitude, as is seen in Figure 4-9. In the table, the variable drag profile is the one where the controller is operating, so the drag profile changes over time, and the constant drag profiles are not controlled, so they maintain a constant profile.

Table 4.2: Case 1 orbit altitudes [km]

Elapsed Constant Constant Constant Variable Time low-drag medium- high-drag Drag [days] Profile drag Profile Profile Profile 30 520.6 519.0 517.3 519.7 60 520.1 514.8 509.1 516.8 90 519.5 509.0 496.7 509.6 120 518.8 502.7 482.0 502.5 150 518.4 497.6 468.2 496.0

With control, the altitude of the lowest satellite in this case is very similar to the altitude of the same satellite utilizing a constant medium-drag profile. It is important to note that the altitude for the variable case (with control) decreases more than the medium-drag profile once the constellation is mostly implemented, which occurs after

113 days. This is because the leader satellite is set to a medium-drag profile, and

89 all follower satellites will match its altitude. If orbital lifetime is a concern, once the constellation is implemented, the control algorithm should command all satellites to maintain a low-drag profile and adjust the drag area used for the high and medium- drag configurations if additional adjustments are needed. Station keeping, as shown in Section 4.8, discusses the expected drift over time without control.

4.4 Results for Case Study 2: TROPICS Low In- clination Orbit

Case 2 involves separating four satellites starting from the same initial conditions. The control algorithm first separates the semi-major axes to establish different rates of change for the mean anomalies. Then, the semi-major axes are matched as the satellites reach their corresponding slot positions. The clusterness drops below 0.005 on Day 160, as shown in Figure 4-11.

Clusterness 1 0.9 - 0.8

0.7

U, 0.61

0.5

U 0.4

0.3

0.2

0.1

0 0 50 100 150 200 250 Time [Days)

Figure 4-11: Case 2: TROPICS Low Inclination orbit clusterness

90 The semi-major axes remain relatively close (within 3 kilometers of each other), but this is enough separation to change their relative mean anomalies. The satellite that moves the most relative to Satellite 1 has the largest change in its semi-major axis, and the other two have smaller changes. For Case 2, Satellite 1 is commanded to a high-drag attitude, and the others are commanded to a low-drag attitude for the first five days. This helps establish separation in semi-major axes so that the designated leader satellite (Sat 1 in this case) is clear, as shown in Figure 4-12. The control algorithm works without creating this separation, but it would take longer.

Truth Relative Semi Major Axis Relative to Satellite 1 3500 I Sat I 3000- Sat2 - Sat 3

E Sat 4 0 2500-

2000 -

1500 0 1000 E 500

0 S6w

-500 ' I I 0 50 100 150 200 250 Time [Days]

Figure 4-12: Case 2: TROPICS Low Inclination orbit relative semi-major axes

As shown in Figure 4-12, the relative mean anomalies increase smoothly until each satellite is in its corresponding slot. There is no noticeable overshoot of the mean anomalies, and each satellite remains in its slot with errors smaller than 0.3 degrees over 50 days. The altitude begins at 592.9 km, drops to 583.7 km by day 150, and ends at 576.5 km on day 250.

91 Truth Mean Anomaly Relative to Satellite 1 400 - -Sat I 350 - Sat2 - Sat 3 300 3DO- Sat 4

10

0 0 50 100 ISO 200 250 Timfe [Days]

Figure 4-13: Case 2: TROPICS Low Inclination orbit relative mean anomalies 4.5 Results for Case Study 3: Polar, Elliptical Or- bit

Case study 3 is unique in that it uses elliptical orbits. For such a case, the relative true anomalies oscillate each orbit because the orbital speed changes with the true anomaly. One satellite may be moving quickly while another is going slowly. Differential drag control acts too slowly to counter this. Because of this limitation, the mean anomaly, which changes at a constant rate, is used in the estimation and control algorithms. For this case, all satellites are assumed to have the same initial orbits. While in reality there would be some separation, starting with the same initial orbits means that the algorithm must create initial separation. Case I (NPSCuL 8- CubeSat Deployer) shows that the algorithms in this research work for cases where the satellites start from different orbits at different times.

The clusterness decreases from the start of the Case 3 scenario, and this is shown

92 in Figure 4-14. Once the clusterness below 0.005, which happens on Day 126, it remains low as differential drag is used to make small orbit adjustments.

Clusterness I

0.9

0.8

0.7

C', 0.6

0-5

C', 0.4

0.3

0.2

0.1

0 - 0 50 100 150 200 250 Time [Days]

' Figure 4-14: Case 3: Polar, Elliptical orbit clusterness

Because the initial orbits of the four satellites are the same, they must first separate their semi-major axes and then match them. This process is shown in Figure 4-15. The oscillations towards the latter 100 days are due to inaccuracies in the definition of the mean semi-major axis. One control algorithm inefficiency is that the leader satellite is not clearly designated in the beginning. For Cases 2 and 3, this is corrected by commanding Satellite 1 to a high-drag attitude and the others to a low-drag attitude for the first five days. The relative mean semi-major axes change with two distinct, nearly linear curves, as shown in Figure 4-15.

93 Truth Relative Semi Major Axis Relative to Satellite I 4000 Sat 1 3500 Sat 2 Sat 3 3000 Sat 4 a) 2500

2000

0 1500 - A E 1000 a, 500

0

-500 0 50 100 150 200 250 Time [Days]

Figure 4-15: Case 3: Polar, Elliptical orbit relative semi-major axes

The relative mean anomaly is less sensitive to the drag profile than the semi-major axis, and the changes appear smoother. Each of the satellites obtains its commanded slot position, and maintains it with less than 0.3 degree error. The algorithm is also successful in maintaining the desired relative mean anomalies over time. The starting altitude is 629.3 km, and it drops to 613.5 km after 150 days, and it ends at 601.8 km on day 250.

94 Truth Mean Anomaly Relative to Satellite I 400 Sat I 350 Sat 2 Sat 3 Sat 4 ,300

250

S200 E o 150 C0 ------0100

50

0 0 50 100 150 200 250 Time [Days]

Figure 4-16: Case 3: Polar, Elliptical orbit relative mean anomalies

4.6 Results for Case Study 4: Planet Flock 1-C Comparison

The purpose of Case 4 is to compare the control algorithm used in this thesis to that used by Planet to implement Flock 1-C. These control algorithms are discussed in Section 3.4. The constellation was successfully implemented after 137 days, as shown by the clusterness value in Figure 4-17.

95 Clusterness 0.35

0.3

0.25

0.2 -

0.1

0.05

0 ' 0 20 40 60 80 100 120 140 Time [Days]

Figure 4-17: Case 4: Planet Comparison clusterness

The on-orbit results in Figure 4-18 show the relative mean arguments of latitude of each satellite compared to Dove 090C. The simulation results are shown in Figure

4-19. The orbits for Case 4 are nearly circular (e = 0.0025), so the argument of periapsis is ill-defined. The argument of latitude was used for the control algorithm instead of the mean anomaly because of instabilities in the argument of periapsis.

The control algorithm used in this research prioritizes reducing the clusterness value and the implementation time, but it does not consider orbital altitude. However, clusterness, implementation time, and orbital altitude are all important for CubeSat missions.

96 Flock 1-C orbital spacing relative to 090C vs. time M 350

300 -- 0908

S 250 C is S 0904

'U 200 CI 0906 S -n S 150 C ...... S U 100 'U us

s0

090C ,%,bs IVoll ION& S Vaq SO

Figure 4-18: On-orbit relative arguments of latitude (Case 4: Planet Compar- ison) [18]

Truth Mean Argument of Latitude Relative to Dove 090C '53350 09081 p300 0906-

o 250

200

- E --

093- 100

: 50 .]- --0-

[090C 0 'I 0 20 40 60 80 100 120 140 rime [Days]

- Figure 4-19: Case 4: Planet Comparison simulation relative arguments of latitude

Ignoring the additional clusterness from Doves 0909 and 090C (which are com-

manded to a-separation of 2 degrees), Planet's algorithm implements the constellation

97 with a clusterness of 0.029 175 days after August 26, 2014, the day the simulation be- gins. The mean altitude on February 15, 2015, when the constellation is implemented, is 604.9 km (an altitude drop of 5.5 km). The control algorithm in this thesis implements the 10 CubeSats in 137 days, and the mean altitude after implementation is 601.5 km (an altitude drop of 8.9 km).

However, it is important to note that Planet's results are from on-orbit operations, which are inevitably more complicated than a simulation. Using Planet's algorithm, the satellites also maintain an attitude in which science operations are possible when- ever they are not conducting a high-drag maneuver, which is an important advantage over the control method used in this thesis.

4.7 Sensitivity Study on Implementation Time

The implementation times for a constellation depend heavily on the initial altitude. Case 2 (TROPICS low inclination orbit) was re-run with two satellites and varying initial altitudes, as shown in Table 4.3, and the implementation time was recorded. A constellation was considered implemented when the cluster.ness value remained below 0.005 for 10 consecutive days.

Table 4.3: Constellation implementation time (Case 2)

Altitude [km] Implementation Implementation Time [days] (Form Time [days] (Form Factor 1) Factor 2) 400 52 Deorbited before im- plemented 450 70 56 500 95 76 550 134 105 600 191 145 650 263 207 700 345 273

These results show that differential drag is a viable technique for relative orbit changing for nearly all CubeSat orbits to date. It also shows that for low orbits, orbital

98 energy is a primary concern. In such situations, the control algorithm presented in this research is ineffective, and one that prioritizes orbital energy should be used instead [19]. A modification to the control algorithm in this thesis would be to set the medium-drag area to a value closer to the low-drag area. This would increase the time required to separate the semi-major axes of satellites, but it would reduce losses in orbital energy.

4.8 Station Keeping After Implementation

After a constellation is implemented, periodic control is needed to counter per- turbations that would otherwise cause the constellation to become suboptimal. Ad- ditionally, if there is a difference in semi-major axes that is improperly estimated, the satellites will move from their slot positions. To determine the amount of station keeping required, Case 2 (TROPICS Low Inclination) is used as a scenario, but once the constellation is implemented, all satellites are commanded to their low-drag con- figuration for 100 days. As is shown in Figure 4-20, the clusterness increases for a time, but it is .easily reduced once control is reintroduced.

99 Clusterness I

0.9

0.8

0.7

U) U) 0.6 4, L. a, 0.5 U) C 0.4

0.3

0.2

0.1 - 0 50 100 150 200 250 300 350 Time [Days]

Figure 4-20: Station Keeping clusterness for Case 2: TROPICS Low Inclination (no control from day 173 to day 273)

The drift over time for the 4 CubeS'ats in Case 2 (TROPICS Low Inclination) is shown in Figure 4-21, and the relative semi-major axes is shown in 4-22. The estimated mean semi-major axis is shown here because it captures the small changes more clearly than the truth value since the truth value rapidly oscillates.

100 Truth Mean Anomaly Relative to Satellite I 400 I I I I I - Sat I 350 _Sat2 - Sat 3 -Sat4 300 .

9250

200

9150 Day 173: Control Stops Day 273: Control Starts 100

50

A 0 50 100 150 200 250 300 350 Time [Days]

Figure 4-21: Station Keeping relative mean anomalies for Case 2: TROPICS Low Inclination (no control from day 173 to day 273)

Estimated Relative Semi Major Axis Relative to Satellite 1 3000 Sat 1 2500 Sat 2 Sat 3 Sat4 2000

1500

.0 1000 \ 4, E Control Starts 500 Control Slops

0 - -~ - V 9*W- ... -*"OWN I"" W -

-500 -

-1000 0 50 100 150 200 250 300 350 Time [Days]

Figure 4-22: Station Keeping relative semi-major axes for Case 2: TROPICS Low Inclination (no control from day 173 to day 273)

After 100 days without control, satellites 2 and 3 drift less than one degree from

101 their mean anomaly slot. However, Satellite 4 drifts about 5 degrees. This difference is likely due to satellite 4 being set last and because the clusterness does not account for the difference in semi-major axis, which determines the change in relative mean anomaly. When the control is stopped, Satellite 4's semi-major axis was not as well matched to that of the leader satellite as Satellites 2 and 3. Although this does not make a significant difference in terms of revisit times, it can be easily corrected, as is seen when control is reintroduced. Differential drag techniques will often limit utility of the satellite, so the mission operator must decide how much drift is acceptable and how often station keeping must be performed.

4.9 Chapter Summary

In this chapter, results from a UKF estimating mean orbital elements is presented. The UKF and the controller described in Section 3.4 are used for successful constel- lation implementation in four different case scenarios: Case 1, where 8 CubeSats launched from a NPSCuL deployer reached a clusterness value below 0.005 in 113 days with a 20.9 km loss in altitude; Case 2, where 4 CubeSats in the TROPICS low-inclination orbit reached a clusterness value below 0.005 in 160 days with a 9.9 km loss in altitude; Case 3, where 4 CubeSats in a polar, elliptical orbit reached a clusterness value below 0.005 in 126 days with a 12.7 km loss in altitude; Case 4, where 10 CubeSats in a circular orbit reached a clusterness value below 0.005 in 137 days with a 8.9 km loss in altitude. Results that consider the amount of time required to implement a constellation for two different form factors and several different orbit altitudes find that two CubeSats with a maximum profile area of 0.01 m2 and minimum profile area of 0.09 m2 reach a clusterness value below 0.005 in 52 days from a starting altitude of 400 km and 345 days from a starting altitude of 700 km. Two CubeSats with a maximum profile area of 0.01 m2 and minimum profile area of 0.15 m 2 reach a clusterness value below 0.005 in 56 days from a starting altitude of 450 km and 273 days from a starting altitude of 700 km.

102 Results showing the approach and timescales necessary for station keeping to maintain a maximally-separated constellation are presented for Case 2, TROPICS low inclination orbit for 4 CubeSats where a constellation is implemented in 173 days, and after 100 days of no control in nominal science operations configuration, control is reintroduced, and the constellation reaches a clusterness value below 0.005 in 13 days. Constellation maintenance could be continuously scheduled during non-science operation periods or implemented after running uninterrupted science operations for long periods of time.

103 Chapter 5

Conclusion and Future Work

5.1 Summary

CubeSat missions often have to consider whether or not to include a propulsion system in their bus design. Including propulsion can help with lifetime concerns and relative positioning between satellites, but it comes with financial, mass, volume, and complexity costs. CubeSat constellation missions without propulsion must rely on ad hoc launch services and differential drag to establish and maintain the desired formation. Because most CubeSat constellation missions are planned for LEO oper- ation, differential drag is an attractive option. As was shown in Case 1, 8-CubeSat NPSCuL deployment, and Case 4, 10-CubeSat Planet Comparison, differential drag can be used with different starting conditions for each CubeSat, and the algorithms presented in this research would work well in combination with ad hoc launches.

Differential drag can also be used as a technique to separate satellites with similar starting conditions, as was shown in Case 2 for the TROPICS low inclination orbit and Case 3 for a polar, elliptical orbit.

The clusterness, a metric used to describe the separation of a constellation, reached and maintained values below 0.005 for all four cases: Case 1, 8-CubeSat NPSCuL deployment; Case 2, 4-CubeSat TROPICS low inclination orbit; Case 3, 4-CubeSat polar, elliptical orbit; and Case 4, 10-CubeSat Planet Comparison. As shown in the Station Keeping analysis, a constellation with a clusterness value below 0.005

104 can maintain all satellites within 5 degrees of their appropriate angular slots without control for 100 days, and with differential drag control reintroduced, drifts can be fixed in about two weeks.

5.2 Research Contributions

The proposed estimation technique in this thesis uses an unscented Kalman filter due to its straightforward implementation and high nonlinearities in the system. Ap- plying a UKF to estimate mean orbital elements is a novel approach to this problem, and it reduces the l- mean semi-major axis error from 190 m to 50 m for Case 3

(polar, elliptical orbit). For all of the example cases, the UKF gives accurate estima- tion suitable for differential drag control, and the satellites in this research are able to maintain separation over timescales of 100 days or more.

The controller used in this thesis is based on the mean relative semi-major axes and mean anomalies between each satellite and the designated leader satellite. For all four case studies, a constellation clusterness value below 0.005 is able to be maintained.

The three performance metrics in this work are clusterness, implementation time, and orbital altitude. The focus of this thesis is on reducing clusterness and implemen- tation time, and a differently structured controller could focus more on maintaining

orbit altitude. For cases with different initial conditions for the satellites, the cluster-

ness value slowly oscillates, but applying differential drag control results in clusterness

decreasing until the constellation is implemented. The performance metrics are quan- tified for differential drag implementation for each of the case studies, as described in

Section 4.9 and 5.1.

5.3 Future Work

The UKF used in this thesis works for the cases investigated, but it is sensitive to tuning parameters. Specifically, the UKF performance is dependent on the process

noise and step size. Tuning is done through trial-and-error in this thesis, but an

105 adaptive UKF could also be used to simultaneously estimate the process noise. Al- though it adds complexity, this could make the estimator more suitable for different time steps. Another possible technique would be to use a particle filter on the ground to estimate each satellite's mean orbit. Particle filtering is a brute force method of estimation, but it works well for highly nonlinear systems and non-Gaussian distribu- tions. The drawback of particle filtering is that the computational requirements are large, so it is not a viable technique for constellations consisting of many CubeSats. It would be possible to use raw GPS measurements that are transmitted to the ground station, which then uses a particle filter to estimate the mean orbit of each satel- lite. The downside to this technique is that the satellite would only have these orbit estimates during ground station overpasses, so the satellite could go several orbits without orbit estimation, which may not be acceptable for some satellite missions. While constellation implementation is only one of many concerns in satellite mis- sions, this thesis should serve as a useful resource for others and a building block for future research in CubeSat constellation configuration management using differential drag.

106 References

[1] Robinson Meyer. A new 50-trillion pixel image of earth, every

day. http://www.theatlantic.com/technology/archive/2016/03/

terra-bella-planet-labs/472734/, 2016. Accessed: 29 Jan 2017.

[2] Debra Werner. Silicon valley firms join forces on

agricultural imagery venture. http ://spacenews . com/ silicon-valley-firms-join-forces-on-agricultural-imagery-venture/, 2015. Accessed: 26 Apr 2017.

[3] Massachusetts Institute of Technology Lincoln Laboratory. Time-Resolved Ob- servations of Precipitationstructure and storm intensity with a Constellation

of Smallsats: Mission Overview, 2016.

[4] Jeff Foust. Smallsats provide opportunities and chal-

lenges for weather data. http://spacenews.com/

smalls at s-provide-opportunities-and- challenges-f or-weather-data/, 2017. Accessed: 01 Feb 2017.

[5] Steven Arestie, E Glenn Lightsey, and Brian Hudson. Development of a modu-

lar, cold gas propulsion system for small satellite applications. Journal of Small Satellites, 1(2):63-74, 2012.

[6] Michael Keidar, Taisen Zhuang, Alexey Shashurin, George Teel, Dereck Chiu, Joseph Lukas, Samudra Haque, and Lubos Brieda. Electric propulsion for small

satellites. Plasma Physics and Controlled Fusion, 57(1):014005, 2014.

107 [7] David Hinkley. A novel cold gas propulsion system for nanosatellites and pi-

cosatellites. 2008.

[8] Joseph Gangestad, Brian Hardy, and David Hinkley. Operations, orbit deter-

mination, and formation control of the aerocube-4 cubesats. 2013.

[9] Juergen Mueller, Richard Hofer, and John Ziemer. Survey of propulsion tech-

nologies applicable to cubesats. 2010.

[10] Michael Tsay, Derek Lafko, Jurg Zwahlen, and William Costa. Development of

busek 0.5 n green monopropellant thruster. 2013.

[11] Paulo Lozano and Daniel Courtney. On the development of high specific impulse

electric propulsion thrusters for small satellites. In Pestana conference Center-

Funchal, Madeira-Portugal,May-June 2010, 2010.

[12] Peter Fortescue, Graham Swinerd, and John Stark. Spacecraft systems engi-

neering. John Wiley & Sons, 2011.

[13] Romano Bevilacqua and Marcello Romano. Rendezvous maneuvers of multiple

spacecraft using differential drag under j2 perturbation. Journal of Guidance, Control, and Dynamics, 31(6):1595-1607, 2008.

[14] Balaji Shankar Kumar, Alfred Ng, Keisuke Yoshihara, and Anton De Ruiter.

Differential drag as a means of spacecraft formation control. IEEE Transactions

on Aerospace and Electronic Systems, 47(2):1125-1135, 2011.

[15] CL Leonard, WM Hollister, and EV Bergmann. Orbital formationkeeping with

differential drag. Journal of Guidance, Control, and Dynamics, 12(1):108-113, 1989.

[16] Joseph W Gangestad, Darren Rowen, and Brian Hardy. Along for the ride:

Experience with flexible mission design for cubesats. In AIAA/AAS Astrody-

namics Specialist Conference, page 4124, 2014.

108 [17] Sanny Omar. Using differential aerodynamic forces for cubesat orbit control. 2013.

[18] Cyrus Foster, Henry Hallam, and James Mason. Orbit determination and

differential-drag control of planet labs cubesat constellations. Astronautical

Sciences, 2015.

[19] Alan S Li and James Mason. Optimal utility of satellite constellation separation

with differential drag. In AIAA/AAS Astrodynamics Specialist Conference, page 4112, 2014.

[20] Joakim Kasper. About the gps program. http ://www . fi-aeroweb. com/

Defense/Global-Positioning-System.html, 2014. Accessed: 30 Jan 2017.

[21] Gps block iiia. https://en.wikipedia.org/wiki/GPSBlockIIIA#

Deployment_-Schedule, 2017. Accessed: 21 May 2017.

[22] Claude Lafleur. Spacecraft encyclopedia. claudelafleur.qc.ca/

Spacecrafts-index.html, 2015. Accessed: 30 Jan 2017.

[23] Willard Marquis and Michael Shaw. Gps iii: Bringing new capabilities to the

global community. http: //www. insidegnss. com/node/2746, 2011. Accessed: 21 May 2017.

[24] The CubeSat Program. Cubesat design specification, rev 13. Technical report, Cal Poly SLO, 2014.

[25] Nanosatellite and cubesat database: Nanosatellites by type. http: //www.

nanosats.eu/index.html#f igures, 2017. Accessed: 23 Jan 2017.

[26] Halis C Polat, Marcello Romano, and Josep Virgili-Llop. Survey, statistical

analysis and classification of launched cubesat missions with emphasis on the

attitude control method. 2016.

[27] Daniel Selva and David Krejci. A survey and assessment of the capabilities of

cubesats for earth observation. Acta Astronautica, 74:50-68, 2012.

109 [28] Eric Hand. Thinking inside the box. Science, 348(6231):176-177, 2015.

[29] Planet launches satellite constellation to image the

whole planet daily. https ://www . planet .com/pulse/ planet-launches-satellite-constellation-to-image-the-whole-planet-daily/. Accessed: 24 Mar 2017.

[30] The Tauri Group. State of the satellite industry report. Technical report, Satellite Industry Association, September 2016.

[31] Kirk Woellert, Pascale Ehrenfreund, Antonio J Ricco, and Henry Hertzfeld. Cubesats: Cost-effective science and technology platforms for emerging and developing nations. Advances in Space Research, 47(4):663-684, 2011.

[32] Jordi Puig-Suari, Clark Turner, and William Ahlgren. Development of the standard cubesat deployer and a cubesat class picosatellite. In Aerospace Con- ference, 2001, IEEE Proceedings., volume 1, pages 1-347. IEEE, 2001.

[33] LLC NanoRacks. Nanoracks cubesat deployer (nrcsd) interface control docu- ment. 0.36, 2013.

[34] Matthew R Crook. NPS CubeSat launcher design, process and requirements. PhD thesis, Monterey, California. Naval Postgraduate School, 2009.

[35] Canisterized satellite dispenser (csd) data sheet. Technical report, Planetary Systems Corporation, 2016.

[36] Isipod cubesat deployer. Technical report, ISIS, 2014.

[37] Eric Hand. Cubesats promise to fill weather data gap. Science, Dec 2015.

[38] Suomi npp (national polar-orbiting partnership mission. https: //directory. eoportal. org/web/eoportal/satellite-missions/s/suomi-npp, 2017. Ac- cessed: 21 May 2017.

[39] Ayesha Hein. A systems analysis of cubesat constellations with distributed sensors. Master's thesis, Massachusetts Institute of Technology, 2017.

110 [40] Zachary Scott Decker. A systems-engineering assessment of multiple CubeSat

build approaches. PhD thesis, Massachusetts Institute of Technology, 2016.

[41] Jasper Bouwmeester and J Guo. Survey of worldwide pico-and nanosatel-

lite missions, distributions and subsystem technology. Acta Astronautica, 67(7):854-862, 2010.

[42] Cubesat mission status, 2000-present. https: //sites. google . com/a/slu.

edu/swartwout/home/cubesat-database, 2017. Accessed: 21 May 2017.

[43] The global positioning system. http: //www. gps .gov/systems/gps/. Accessed: 03 Feb 2017.

[44] Gps iii fact sheet. Technical report, Lockheed Martin, 2014.

[45] Air force to launch new gps satellite friday night. http: //www. space. com/

8463-air-f orce-launch-gps-satellite-f riday-night .html. Accessed: 04 Feb 2017.

[46] Project micromas. https: //beaverworks .11.mit . edu/CMS/bw/

projectmicromas. Accessed: 04 Feb 2017.

[47] David A Vallado. An analysis of state vector prediction accuracy. Paper USR, pages 07-S6, 2007.

[48] Jim Woodburn. Methods of orbit propagation. Presentation, Online, 2005. Accessed: 06 Feb 2017.

[49] Gerald R Hintz. Survey of orbit element sets. Journal of guidance, control, and dynamics, 31(3):785-790, 2008.

[50] Roger R Bate, Donald D Mueller, and Jerry E White. Fundamentals of astro-

dynamics. Courier Corporation, 1971.

[51] Jerry Sellers. Earth's oblateness - j2. https://www.agi.com/resources/ educational-alliance-program/astro-primer/primer9l.htm. Accessed: 06 Feb 2017.

111 [52] James Calvert. Spherical harmonics. https://mysite.du.edu/-jcalvert/

math/harmonic/harmonic .htm. Accessed: 19 Feb 2017.

[53] David A Vallado. Fundamentals of astrodynamics and applications, volume 12.

Springer Science & Business Media, 2001.

[54] Bradford W Parkinson. Progress in astronautics and aeronautics: Global posi-

tioning system: Theory and applications, volume 1. Aiaa, 1996.

[55] Hanspeter Schaub and Kyle T Alfriend. J 2 invariant relative orbits for space-

craft formations. Celestial Mechanics and Dynamical Astronomy, 79(2):77-95, 2001.

[56] Shkelzen Cakaj, Bexhet Kamo, Algenti Lala, Ilir Shinko, and Elson Agastra.

The apsidal precession for low earth sun synchronized orbits. Earth, 180(3):4.

[57] Earth orbiting satellite theory. http: //what-when-how .com/

space-s cience-and-t e chnology/earth-orbit ing-sat ellit e-theory/. Accessed: 27 Feb 2017.

[58] Daniel Oltrogge and Kyle Leveque. An evaluation of cubesat orbital decay. 2011.

[59] Li Qiao, Chris Rizos, and Andrew G Dempster. Analysis and comparison of

cubesat lifetime. In Proceedings of the 12th Australian Space Conference, Syd-

ney, Australia, pages 249-260. Citeseer, 2013.

[60] T Scholz, CO Asma, and A Aruliah. Recommended set of models and input

parameters for the simulations of orbital dynamics of the qb50 cubesats. In In-

ternational Conference on Astrodynamics Tools and Techniques, ICATT, 2012.

[61] US Standard Atmosphere. National oceanic and atmospheric administration.

Aeronautics and Space Administration, United States Air Force, Washington, DC, 1976.

112 i

[62] Mark Moldwin. An introduction to space weather. Cambridge University Press, 2008.

[63] Yihua Zheng. Space weather in the thermosphere: Satellite drag. Presentation, Online, 2014. Accessed: 04 Mar 2017.

[64] Strand-1. Web, 2013. Accessed: 24 May 2017.

[65] Louis Breger and Jonathan P How. Gauss's variational equation-based dynam-

ics and control for formation flying spacecraft. Journal of Guidance, Control, and Dynamics, 30(2):437-448, 2007.

[66] Yoshihide Kozai. The motion of a close earth satellite. The Astronomical Journal, 64:367, 1959.

[67] Dirk Brouwer. Solution of the problem of artificial satellite theory without drag.

The Astronomical Journal, 64:378, 1959.

[68] WH Clohessy. Terminal guidance system for satellite rendezvous. Journal of

the Aerospace Sciences, 2012.

[69] R Bevilacqua, M Romano, and 0 Yakimenko. Online generation of quasi-

optimal spacecraft rendezvous trajectories. Acta Astronautica, 64(2):345-358, 2009.

[70] Nathan Orr, Jesse Eyer, Benoit Larouche, and Robert Zee. Precision formation

flight: the canx-4 and canx-5 dual nanosatellite mission. 2007.

[71] Saptarshi Bandyopadhyay, Rebecca Foust, Giri P Subramanian, Soon-Jo

Chung, and Fred Y Hadaegh. Review of formation flying and constellation

missions using nanosatellites. Journal of Spacecraft and Rockets, (0):567-578, 2016.

[72] Anthony S Williams. Expected position error for an onboard satellite gps re-

ceiver. Technical report, DTIC Document, 2015.

113 [73] GPS Navstar. User equipment introduction. Department of Defense Document MZ10298, 1, 1996.

[74] Jianjun Zhang. Precise velocity and acceleration determination using a stan-

dalone gps receiver in real time. 2007.

[75] Fuhong Wang, Xiaohong Zhang, and Jingsong Huang. Error analysis and accu-

racy assessment of gps absolute velocity determination without sa. Geo-spatial Information Science, 11(2):133-138, 2008.

[76] David Vallado. Astrodynamics software. http://celestrak.com/software/ vallado-sw.asp, 2016.

[77] Dan Simon. Optimal state estimation: Kalman, H infinity, and nonlinear ap-

proaches. John Wiley & Sons, 2006.

[78] John L Crassidis and John L Junkins. Optimal estimation of dynamic systems. CRC press, 2011.

[79] Gilbert Strang. Computationalscience and engineering, volume 791. Wellesley- Cambridge Press Wellesley, 2007.

[80] Fred Daum. Nonlinear filters: beyond the kalman filter. IEEE Aerospace and

Electronic Systems Magazine, 20(8):57-69, 2005.

[81] Eric A Wan and Rudolph Van Der Merwe. The unscented kalman filter for non-

linear estimation. In Adaptive Systems for Signal Processing, Communications, and Control Symposium 2000. AS-SPCC. The IEEE 2000, pages 153-158. Ieee, 2000.

[82] Jindfich Dunik, Miroslav Simandl, and Ondiej Straka. Unscented kalman fil-

ter: aspects and adaptive setting of scaling parameter. IEEE Transactions on Automatic Control, 57(9):2411-2416, 2012.

114

1INI[Illill|!|19||1||||||||1||||1||||||||||||0||Ill [83] Zhe Jiang, Qi Song, Yuqing He, and Jianda Han. A novel adaptive unscented kalman filter for nonlinear estimation. In Decision and Control, 2007 46th IEEE Conference on, pages 4293-4298. IEEE, 2007.

[84] Harold D Black. A passive system for determining the attitude of a satellite. AIAA journal, 2(7):1350-1351, 1964.

[85] Malcolm David Shuster and S D- Oh. Three-axis attitude determination from vector observations. Journal of Guidance, Control, and Dynamics, 2012.

[86] William Blackwell, G Allan, G Allen, D Burianek, F Busse, D Elliott, C Gal- braith, R Leslie, I Osaretin, M Shields, et al. Microwave radiometer tech- nology acceleration mission (mirata): Advancing weather remote sensing with nanosatellites. 2014.

[87] John Enright, Doug Sinclair, Cordell Grant, Geoff McVittie, and Tom Dzamba. Towards star tracker only attitude estimation. 2010.

[88] Tom Dzamba, John Enright, Doug Sinclair, Kofi Amankwah, Ronny Votel, Ilija Jovanovic, and Geoffrey McVittie. Success by 1000 improvements: flight qualification of the st-16 star tracker. 2014.

[89] Christopher Ryan McBryde and E Glenn Lightsey. A star tracker design for cubesats. In Aerospace Conference, 2012 IEEE, pages 1-14. IEEE, 2012.

[90] Weston Alan Navarro Marlow. Improving attitude determination and control

of resource-constrainedCubeSats using unscented Kalman filtering. PhD thesis, Massachusetts Institute of Technology, 2016.

[91] James Mason, Matthew Baumgart, Thomas Woods, Daniel Hegel, Bryan Rogler, George Stafford, Stanley Solomon, and Phillip Chamberlin. Minxss cubesat on-orbit performance and the first flight of the blue canyon technolo- gies xact 3-axis adcs. 2016.

115 [92] Michael Taraba, Christian Rayburn, Albert Tsuda, and Charles MacGillivray. Boeing's cubesat testbed 1 attitude determination design and on-orbit experi- ence. 2009.

[93] Maxim Khatsenko. A rotary shape memory alloy actuator for cubesat deploy- able structures. Master's thesis, Massachusetts Institute of Technology, 2017.

[94] MATLAB. Version R2016a. The MathWorks Inc., Natick, Massachusetts, 2010.

[95] Systems Tool Kit. Version 10. Analytical Graphics, Inc., Exton, Pennsylvania, 2016.

[96] Kareem Omar and Michael Briggs. Simultaneous orbital and attitude propaga- tion of cubesats in low earth orbit. 2016.

[97] Bradford W Parkinson. Progress in astronautics and aeronautics: Global posi- tioning system: Theory and applications, volume 2. Aiaa, 1996.

[98] David Eagle. Frozen orbit design (matlab file exchange). https ://www.mathworks. com/matlabcentral/fileexchange/ 39119-frozen-orbit-design?focused=3770481&tab=function, 2012.

[99] Gregory Allan, Zachary Lee, Ayesha Hein, and Kerri Cahoy. Microwave ra- diometers for small satellites. Presentation at 2017 Cal Poly CubeSat Developer Workshop, 2017.

[100] Jordi Puig-Suari, Guy Zohar, and Kyle Leveque. Deployment of cubesat con- stellations utilizing current launch opportunities. 2013.

[101] Carlos Niederstrasser and Warren Frick. Small launch vehicles-a 2015 state of the industry survey. 2015.

[102] Jeff Foust. Nasa awards contracts for dedi- cated cubesat launches. http://spacenews.com/ nasa-awards-contracts-f or-dedicated-cubesat-launches/, 2015. Ac- cessed: 30 Jan 2017.

116

OM MOMININ qW, - - [103] Mirata (microwave radiometer technology acceleration). https: //directory. eoportal. org/web/eoportal/satellite-missions/m/mirata, 2015. Ac- cessed: 17 Apr 2017.

[104] Planet labs public orbital ephemerides. http: //ephemerides .planet-labs. com/, 2017. Accessed: 23 May 2017.

[105] Bryan Klofas. Planet labs ground station network. In 13th Annual CubeSat

Developers Workshop. Planet, 2016.

117