Dynamics and Control of Electromagnetic Satellite Formations
Transcription
Dynamics and Control of Electromagnetic Satellite Formations
Dynamics and Control of Electromagnetic Satellite Formations Umair Ahsun, David W. Miller June 2007 SSL # 12-07 2 Dynamics and Control of Electromagnetic Satellite Formations by Umair Ahsun B.Sc. in Electrical Engineering University of Engineering & Technology, Lahore Pakistan (1996) S.M. in Aeronautical and Astronautical Engineering Massachusetts Institute of Technology, Feb. 2004 Submitted to the Department of Aeronautics and Astronautics in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY in AERONAUTICAL AND ASTRONAUTICAL ENGINEERING at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY June 2007 © Massachusetts Institute of Technology 2007. All rights reserved. Author________________________________________________________________________________ Graduate Research Assistant Space Systems Laboratory Certified By ___________________________________________________________________________ David W. Miller Professor, Aeronautics & Astronautics Thesis Committee Chair/Thesis Advisor Certified By ___________________________________________________________________________ Jonathan P. How Associate Professor, Aeronautics & Astronautics Thesis Committee Co-Chair Certified By ___________________________________________________________________________ James D. Paduano Research Affiliate, Aeronautics & Astronautics Department Thesis Committee Member Certified By ___________________________________________________________________________ Raymond J. Sedwick Principle Research Scientist, Aeronautics & Astronautics Thesis Committee Member Accepted By __________________________________________________________________________ Jaime Peraire Professor, Aeronautics & Astronautics Chair, Committee on Graduate Students [Blank page] 2 Dynamics and Control of Electromagnetic Satellite Formations by Umair Ahsun Abstract Satellite formation flying is an enabling technology for many space missions, especially for space-based telescopes. Usually there is a tight formation-keeping requirement that may need constant expenditure of fuel or at least fuel is required for formation reconfiguration. Electromagnetic Formation Flying (EMFF) is a novel concept that uses superconducting electromagnetic coils to provide forces and torques between different satellites in a formation which enables the control of all the relative degrees of freedom. With EMFF, the life-span of the mission becomes independent of the fuel available on board. Also the contamination of optics or sensitive formation instruments, due to thruster plumes, is avoided. This comes at the cost of coupled and nonlinear dynamics of the formation and makes the control problem a challenging one. In this thesis, the dynamics for a general N-satellite electromagnetic formation will be derived for both deep space missions and Low Earth Orbit (LEO) formations. Nonlinear control laws using adaptive techniques will be derived for general formations in LEO. Angular momentum management in LEO is a problem for EMFF due to interaction of the magnetic dipoles with the Earth’s magnetic field. A solution of this problem for general Electromagnetic (EM) formations will be presented in the form of a dipole polarity switching control law. For EMFF, the formation reconfiguration problem is a nonlinear and constrained optimal time control problem as fuel cost for EMFF is zero. Two 3 different methods of trajectory generation, namely feedback motion planning using the Artificial Potential Function Method (APFM) and optimal trajectory generation using the Legendre Pseudospectral method, will be derived for general EM Formations. The results of these methods are compared for random EM Formations. This comparison shows that the artificial potential function method is a promising technique for solving the real-time motion planning problem of nonlinear and constrained systems, such as EMFF, with low computational cost. Specifically it is the purpose of this thesis to show that a fullyactuated N-satellite EM formation can be stabilized and controlled under fairly general assumptions, therefore showing the viability of this novel approach for satellite formation flying from a dynamics and controls perspective. Thesis Supervisor: David W. Miller Title: Professor Aeronautics & Astronautics Department 4 Acknowledgements I would like to acknowledge my advisor Dave Miller for his constant support and guidance during my stay at Space Systems Lab. I would also like to thank my committee members Jonathan How, Jim Paduano and Raymond Sedwick for their helpful suggestions and critique that helped me to improve my research. I would like to thank my mother as no doubt her love and prayers helped me remain focused during my studies. And lastly and most importantly I thank my loving wife Sarah and our beloved son Arslan for their support and understanding. This work was partially funded under Contract FA9453-05-C-0180 from the Defense Advanced Research Project Agency with Mr. Scott Franke from the US Air Force Research Laboratory at Kirtland AFB, NM serving as the Project Officer. Partial funding was also provided by a subcontract with Payload Systems Inc. in support of NASA SBIR Contract NNG06CA12C, managed by Goddard Space Flight Center with Dr. Jesse Leitner as the COTR. 5 [Blank page] 6 Table of Contents ABSTRACT .................................................................................................................................................. 3 ACKNOWLEDGEMENTS ......................................................................................................................... 5 TABLE OF CONTENTS ............................................................................................................................. 7 LIST OF FIGURES.................................................................................................................................... 11 CHAPTER 1 INTRODUCTION ......................................................................................................... 13 1.1. MOTIVATION AND BACKGROUND ...................................................................................................... 13 1.2. OVERVIEW OF EMFF AND REVIEW OF PREVIOUS WORK ON EMFF .................................................. 18 1.3. RESEARCH OBJECTIVES AND APPROACH ........................................................................................... 20 1.4. THESIS OVERVIEW ............................................................................................................................. 22 CHAPTER 2 ELECTROMAGNETIC FORMATION DYNAMICS............................................... 25 2.1. TRANSLATIONAL DYNAMIC MODEL FOR LEO .................................................................................. 25 2.1.1. Preliminaries............................................................................................................................. 26 2.1.2. Derivation of Translational Equations of Motion ..................................................................... 28 2.2. ATTITUDE DYNAMICS INCLUDING GYRO-STIFFENING EFFECTS ........................................................ 37 2.2.1. Magnetic Torque ....................................................................................................................... 40 2.3. EARTH’S MAGNETIC FIELD MODEL ................................................................................................... 42 2.3.1. Tilted Dipole Model of the Earth’s Magnetic Field Main Component ..................................... 43 2.3.2. Full Representation of the Main Field using Spherical Harmonic Analysis............................. 46 2.3.3. Disturbance Force due to Earth’s Magnetic Field ................................................................... 48 2.4. DEEP SPACE 2D DYNAMICS ............................................................................................................... 49 2.5. RELATIVE TRANSLATIONAL DYNAMICS ............................................................................................ 54 2.6. SUMMARY ......................................................................................................................................... 58 CHAPTER 3 CONTROL OF EM FORMATIONS IN LEO ............................................................ 59 3.1. CONTROL FRAMEWORK ..................................................................................................................... 60 3.2. TRANSLATIONAL CONTROL FOR N-SATELLITE EM FORMATION ....................................................... 62 3.2.1. Proof of asymptotic convergence using Barbalat’s Lemma...................................................... 67 3.3. ADAPTIVE ATTITUDE CONTROL ........................................................................................................ 69 3.4. ANGULAR MOMENTUM MANAGEMENT ............................................................................................. 71 3.4.1. AMM for two-Satellite Formation using Sinusoidal Excitation ................................................ 72 3.4.2. AMM using Dipole Polarity Switching ..................................................................................... 73 3.5. SIMULATION RESULTS ....................................................................................................................... 75 3.5.1. Two-Satellite Cross Track Formation....................................................................................... 75 3.6. SUMMARY ......................................................................................................................................... 79 CHAPTER 4 APFM AND STABILITY ANALYSIS......................................................................... 81 4.1. ARTIFICIAL POTENTIAL FUNCTION METHOD FOR VEHICLE GUIDANCE AND CONTROL ..................... 81 4.1.1. An Illustrative Example............................................................................................................. 82 7 4.1.2. Feedback Motion Planning using APFM and its Limitations ................................................... 87 4.2. STABILITY ANALYSIS OF EM FORMATIONS ....................................................................................... 91 4.2.1. Limitations of Linear Analysis of EMFF................................................................................... 91 4.3. RECONFIGURATION OF EM FORMATIONS USING APFM .................................................................... 94 4.3.1. Simulation Results................................................................................................................... 102 4.3.2. Computational Complexity of the Algorithm........................................................................... 106 4.4. POTENTIAL FUNCTION SHAPING FOR REDUCING MANEUVER TIME ................................................. 107 4.4.1. Two-Satellite Formation Simulation Results using PF Shaping ............................................. 110 4.5. SOLVING THE DIPOLE EQUATIONS ................................................................................................... 111 4.5.1. Solution by Fixing the Free Dipole ......................................................................................... 113 4.5.2. Solution by Utilizing the Free Dipole for Angular Momentum Management ......................... 114 4.6. SUMMARY ....................................................................................................................................... 116 CHAPTER 5 OPTIMAL TRAJECTORY GENERATION FOR EM FORMATIONS............... 119 5.1. INTRODUCTION ................................................................................................................................ 119 5.1.1. An Illustrative Example Using the Gen-X Mission.................................................................. 119 5.2. OPTIMAL CONTROL PROBLEM FORMULATION FOR EMFF............................................................... 124 5.3. OVERVIEW OF SOLUTION METHODOLOGIES .................................................................................... 126 5.4. DIRECT SHOOTING METHOD ............................................................................................................ 128 5.4.1. A Description of the Algorithm ............................................................................................... 128 5.4.2. Some Theoretical Considerations and Limitations of the Algorithm ...................................... 132 5.4.3. Results ..................................................................................................................................... 134 5.5. LEGENDRE PSEUDOSPECTRAL METHOD .......................................................................................... 135 5.5.1. Approximating Functions, their Derivatives and Integrals using Orthogonal Polynomials... 136 5.5.2. Review of the Legendre Pseudospectral Method..................................................................... 143 5.5.3. Results ..................................................................................................................................... 150 5.6. SUMMARY ....................................................................................................................................... 152 CHAPTER 6 REAL-TIME IMPLEMENTATION OF OPTIMAL TRAJECTORIES ............... 155 6.1. INTRODUCTION ................................................................................................................................ 155 6.2. ADAPTIVE TRAJECTORY FOLLOWING FORMULATION ...................................................................... 155 6.2.1. An Upper Bound for Constraint Tightening for Bounded Disturbances ................................. 156 6.2.2. Trajectory Following Algorithm Description.......................................................................... 158 6.2.3. Simulation Results................................................................................................................... 160 6.3. RECEDING HORIZON CONTROL FORMULATION ............................................................................... 162 6.3.1. RH Formulation with Optimal Cost-to-Go Function .............................................................. 164 6.3.2. Simulation Results................................................................................................................... 166 6.3.3. Limitations and Possible Extensions....................................................................................... 168 6.4. COMPARISON OF APFM AND OPTIMAL TRAJECTORY FOLLOWING METHOD................................... 169 6.5. SUMMARY ....................................................................................................................................... 172 CHAPTER 7 CONCLUSIONS .......................................................................................................... 175 7.1. SUMMARY AND CONTRIBUTIONS ..................................................................................................... 175 7.2. FUTURE DIRECTIONS ....................................................................................................................... 177 APPENDIX A: MATLAB TOOLS FOR SIMULATION OF ELECTROMAGNETIC FORMATIONS ........................................................................................................................................ 179 APPENDIX B: PRECISION FORMATION CONTROL USING EMFF .......................................... 183 B.1 GEN-X PRECISION FF REQUIREMENTS............................................................................................. 183 B.2 PROBLEM FORMULATION ................................................................................................................. 184 B.3 REGULATOR SETUP .......................................................................................................................... 186 B.4 PLANT DYNAMICS............................................................................................................................ 189 B.5 DISTURBANCE SOURCES .................................................................................................................. 191 8 B.4 CONTROLLER SYNTHESIS ................................................................................................................. 191 B.7 CONCLUSION.................................................................................................................................... 194 REFERENCES ......................................................................................................................................... 197 9 List of Figures Figure 1.1: Equal mass contours for Isp = 3000 thrusters and EMFF for a 10 years mission life. ............................................................................................................................ 17 Figure 1.2: Thesis organization and interdependency of chapters.................................... 23 Figure 2.1: Geometry of different reference frames ......................................................... 27 Figure 2.2: Geometry of the Rotated Frame Fr................................................................. 34 Figure 2.3: The main magnetic field generated by dynamo action in the hot, liquid outer core. Above Earth’s surface, nearly dipolar field lines are oriented outwards in the southern and inwards in the northern hemisphere (source [25])............................... 43 Figure 2.4: Comparison of the tilted dipole model and WMM2005 model for a polar circular LEO orbit at an altitude of 500 km (the longitude is fixed at -71°)............. 48 Figure 2.5: EMFF coils, reaction wheel and coordinate frame definition for 2D dynamics ................................................................................................................................... 50 Figure 2.6: Geometry of steerable dipoles for magnetic force and torque computation. . 52 Figure 3.1: Two-satellite formation orbits. ....................................................................... 76 Figure 3.2: Follower satellite results................................................................................. 78 Figure 3.3: Follower satellite quaternions. ....................................................................... 78 Figure 3.4: Different estimated parameters ...................................................................... 79 Figure 4.1: A potential function shape for vehicle 1. The obstruction function is at the location of the vehicle 0. ........................................................................................... 84 Figure 4.2: Reconfiguration results for a two-vehicle formation using APFM................ 86 Figure 4.3: Values of the potential function along the trajectory of vehicle-1. ................ 86 Figure 4.4: The decomposition of the motion planning problem. .................................... 87 Figure 4.5: Case when the gradient of potential function can be zero.............................. 88 Figure 4.6: Coordinate axes for testbed dynamics............................................................ 92 Figure 4.7: A potential function for one satellite in a 4-satellite formation. .................... 96 Figure 4.8: Trajectories for the five-satellite formation reconfiguration........................ 103 Figure 4.9: Lyapunov functions for the five-satellite formation..................................... 103 Figure 4.10: Trajectories for the four-satellite square formation reconfiguration. ......... 104 Figure 4.11: Lyapunov function for the four-satellite square formation. ....................... 105 Figure 4.12: Collision-free trajectories for a 2D, ten-satellite random formation. ......... 106 Figure 4.13: Average simulation and computation-time values for different number of satellites in the random formations. ........................................................................ 107 Figure 4.14: A potential function for a 2-satellite formation in 2D with potential function shaping added.......................................................................................................... 109 Figure 4.15: Two-satellite formation reconfiguration result with PF shaping................ 110 Figure 4.16: 2-satellite formation reconfiguration result without PF shaping................ 111 Figure 5.1: Coil architecture for the Gen-X mission with block arrows showing the forces and torques acting on the dipoles............................................................................ 120 11 Figure 5.2: Non-optimal slew results for the Gen-X mission......................................... 123 Figure 5.3: Control profile for the optimal slew maneuver. ........................................... 123 Figure 5.4: Control profile for the optimal slew maneuver. ........................................... 124 Figure 5.5: Relationship between “direct” and “indirect” methods and the Covector Mapping theorem [47]. ........................................................................................... 127 Figure 5.6: Direct shooting method for solving optimal control problems. ................... 129 Figure 5.7: Results for two-satellite that switch places using the direct shooting method. ................................................................................................................................. 134 Figure 5.8: Cardinal functions (N=5) using Legendre Polynomials and LGL points (squares) .................................................................................................................. 139 Figure 5.9: Infinity norm of the interpolation error for test functions given by Eq. (5.35) ................................................................................................................................. 142 Figure 5.10: Infinity norm of the derivative for test functions given by Eq. (5.35) ....... 143 Figure 5.11: Optimal trajectory results using the LPS method for a four-satellite formation 90° CCW rotation................................................................................... 150 Figure 5.12: A ten-satellite random formation optimal trajectories results using LPS method..................................................................................................................... 151 Figure 5.13: Trajectories generated using LPS method with N=55 for a two-satellite 90° slew maneuver. ....................................................................................................... 152 Figure 6.1: Trajectory following results for a two-satellite formation using exact BiotSavart force-torque computation for the simulated system model, control and error signals. .................................................................................................................... 161 Figure 6.2: Trajectory following results for a two-satellite formation using exact BiotSavart force-torque computation for the simulated system model. ........................ 162 Figure 6.3: Receding Horizon formulation using optimal cost-to-go function. ............. 164 Figure 6.4: RH-formulation simulation results............................................................... 167 Figure 6.5: RH-formulation computation time during simulation.................................. 167 Figure 6.6: Comparison of APFM and OTFM trajectories............................................. 170 Figure A.1: Nonlinear 3D Simulink simulation for electromagnetic formation............. 181 Figure B.1: Coordinate setup for control. ....................................................................... 185 Figure B.2: Block diagram for the regulator setup. ........................................................ 186 Figure B.3: Standard State-Space setup for the regulator problem. ............................... 187 Figure B.4: H∞ controller design setup. .......................................................................... 192 Figure B.5: Weighting filters for error W1 and control effort W2. ................................ 193 Figure B.6: Closed-Loop TFs for H∞ synthesized controller.......................................... 194 Figure B.7: Time response of the closed-loop system to disturbances. Ix is total actuator current, Ic is commanded current and IQ is the current resulting from quantization process..................................................................................................................... 195 12 Chapter 1 Introduction 1.1. Motivation and Background The term Satellite Formation Flying is used for systems that involve two or more spacecraft that fly near each other cooperatively to maintain their relative positions and orientations in order to execute a specific mission. The relative position and orientation of satellites can be fixed or time varying, e.g., a follower satellite may revolve around the leader satellite, while this leader-follower formation may itself be in an orbit around Earth. This distributed satellite architecture in turn enables a number of innovative space missions that are not possible or infeasible with a larger monolithic satellite structure [1], [2]. Some authors have defined the term satellite formation flying in a more precise way, e.g., Scharf et al [3] define satellite formation flying as “a set of more than one spacecraft whose dynamic states are coupled through a common control law. In particular, at least one member of the set must 1) track a desired state relative to another member, and 2) the tracking control law must at the minimum depend upon the state of this other member.” This definition helps to differentiate the satellite formations from the satellite constellations (such as GPS) more easily. Usually there is a very tight requirement for the control of relative position and orientation of the member satellites in the formation. This in turn may translate into 13 constant expenditure of fuel for near-Earth formations or at least fuel is required for formation reorientation. Therefore, the mission life span depends on the fuel available on board the satellites in the formation. In order to elaborate on this point, consider an example of a two-satellite crosstrack formation in a circular orbit around Earth. In such a formation the two satellites need to be kept at a constant distance from each other in a cross-track direction. It should be noted that such cross-track formations can be used in Synthetic Aperture Radar (SAR) applications in which the cross-track distance between the satellites acts as the baseline of the interferometer and can yield information about ground elevation differences [5]. For a circular orbit, the linearized relative dynamics of each satellite with respect to the formation center of mass orbit, which is in a natural Keplarian orbit, is given by Clohessy-Wiltshire equations (also called Hill’s equations) [4]: x − 2ω0 y = 0 y + 2ω0 x − 3ω02 y = 0 (1.1) z +ω z = 0 2 0 where the coordinates (x, y, z) are local coordinates defined in a curvilinear reference frame that rotates as the formation orbits Earth. The y-direction points along the zenith direction, z-axis points along the orbital plane normal, and x-axis completes the right hand system (it points along the negative of the velocity vector for a circular orbit). The formation center of mass mean motion, or orbital frequency, is given by: ω0 = μe R03 (1.2) where μe is the gravitational constant of Earth (398,600.4418 × 109 m3/s2) and R0 is the radius of the formation’s center of mass orbit. 14 For the cross-track formation, the two satellites are to be kept at a constant distance d from each other in the z-direction while the separation along the other two axes is zero. Using Eqs. (1.1), the total inertial force required to hold the formation can be shown to be: F = 2ω02 m1m2 d m1 + m2 (1.3) where m1 and m2 are the masses of the satellites. The forces are oriented in the zdirection away from the orbital plane, effectively repelling the satellites from each other. It should be noted that these forces need to be applied constantly to hold the formation since each satellite in the formation is in a non-Keplerian orbit. Using the rocket equation [23]: ( mp = m f e ΔV / I sp g ) −1 (1.4) the mass of propellant required to achieve a certain mission life can be estimated. In this equation m p and m f are the propellant mass and the final satellite mass (i.e. without propellant) respectively, ΔV is the “delta V” required to maintain the formation over the mission lifetime (it can be obtained by integrating Eq. (1.3)), I sp is the specific impulse of the propulsion system and g is the acceleration due to gravity on the surface of Earth. Similarly, using the dipole equation for two coaxial coils to generate the force given by [13]: 2 ⎛I ⎞ 3 1 F= μ0 ⎜ c ⎟ ( M 1 R1 )( M 2 R2 ) 4 d 8π ⎝ ρ ⎠ (1.5) we can estimate the mass of the EMFF subsystem required to maintain the formation. In this equation F is the force generated between two coaxial coils separated by a distance d, M 1 R1 and M 2 R2 are the mass and radius product for coils one and two respectively, 15 I c / ρ is the ratio of critical coil current and HTS (High Temperature Superconducting) wire volume mass density and represents a technology factor. Using these two equations we can plot equal mass contours for EMFF and thrusters, required to hold the formation in the cross-track direction, as shown in Figure 1.1 (for further detail see Reference [14]). Figure 1.1 shows the boundary when it is more mass-efficient to use 3000 second Isp thrusters versus EMFF. The horizontal axis is the cross-track offset (d/2), while the vertical axis is orbital period. The three curves correspond to different technology levels of the HTS wire. Three regions of interest exist. To the bottom right, the power needed to generate the requisite thrust is unavailable and EMFF is the only option. The region above the curves, and above the thruster limit line, corresponds to cross-track offsets and orbital periods where thrusters are more mass-efficient. Lastly, in the region above the thruster-limit line but below the curves, EMFF is more mass-efficient. This comparison highlights several of the key benefits of EMFF over thrusters as follows. First, EMFF does not have a mission lifetime limitation. Figure 1.1 shows that EMFF is better as compared to thruste based systems for LEO and MEO (Medium Earth Orbits) formations and for long duration missions. Another advantage of EMFF, highlighted by Eq. (1.5), is that adding an additional satellite to the formation improves performance of the EMFF subsystem whereas it does not benefit the thruster subsystem performance. Every time we add an extra, identical satellite and evenly distribute these satellites in the cross-track direction, the resulting reduction in neighbor-to-neighbor separation dramatically increases the magnetic force between neighbors. Note the change in the force given by Eq. (1.5) as a function of distance d. When a third satellite is added to the center of a two satellite formation, the neighbor-to-neighbor separation is divided 16 in half and the neighbor-to-neighbor force increases by a factor of sixteen (24). This increase in force allows the formation array to be grown in length, a capability unavailable with thrusters. Figure 1.1: Equal mass contours for Isp = 3000 thrusters and EMFF for a 10 years mission life. Although this example is a rather extreme one in which a steady expenditure of fuel is required, nevertheless it clearly highlights the impact of consumables on the mission lifetime. Since the satellites need to carry all of the fuel required over the mission lifetime (which means they would need to generate higher forces to hold the formation), using conventional thrusters can become infeasible for certain missions (thruster limit line in Figure 1.1). 17 It should be pointed out that another method of formation flying the satellites, without the used of consumables, is the concept of tethered formations in which different satellites in the formation are physically connected together with the help of tethers (see Reference [6] and references therein for a detailed description of this technique). 1.2. Overview of EMFF and Review of Previous Work on EMFF The novel concept of Electromagnetic Formation Flight (EMFF) removes the mission life time dependency on the availability of fuel as highlighted in the last section. EMFF uses high temperature superconducting (HTS) wire technology to create magnetic dipoles on each satellite in the formation to generate forces and torques in order to maintain and reconfigure the satellite formation. A steerable magnetic dipole on each satellite can be created by using three orthgonogal coils on each satellite in the formation. Force on each satellite in the formation can be applied in any arbitrary direction by using these steerable magnetic dipoles. Since these forces are internal, the center of mass of the formation cannot be moved (momentum is conserved). This can be easily seen for a two satellite formation in which each satellite experiences equal but opposite force due to magnetic dipoles on each satellite. Since satellite formation control involves controlling the relative positions between the satellites, the inability to move the center of mass of the formation is not a limitation in itself. Another important aspect of EMFF is that whenever a shear force (i.e., a force that moves a satellite in the lateral direction with respect to the other satellite) acts on the satellite, a shear torque also acts on it. This shear torque needs to be countered by angular momentum storage devices such as reaction wheels or control moment gyros which can also perform the additional task of attitude control. Therefore, for an arbitrary N-satellite electromagnetic formation, all the relative degrees of freedom 18 can be controlled by using three orthogonal coils and three orthogonal reaction wheels. See references [7], [8] for a more detailed introduction to the concept of EMFF. Previous work on the dynamics and control problem associated with EMFF has shown that a two-satellite fully actuated electromagnetic formation that has three orthogonal coils and three orthogonal reaction wheels is fully controllable [9]. In this reference the dynamics (including the gyro-stiffening effect) for a two satellite formation in deep space (i.e. ignoring the gravitational terms, etc.) has also been derived. Models of the magnetic forces and torques between a general N-satellite electromagnetic formation are derived (both near-field and far-field) in Reference [10]. This reference also discusses ways of computing the dipole strengths to achieve the desired forces on the satellites in a formation. It also discusses the effects of Earth’s gravitational and magnetic fields on EMFF. The control of a two satellite formation in LEO (Low Earth Orbit) based on phase-differences in the coil currents has been proposed by Kaneda et al [11]. In this method each coil is excited by a sinusoidal current with a constant frequency much higher than the orbital frequency and the desired force is provided by adjusting the phase difference between the two dipoles on the satellites in the formation. The sinusoidal variation in the coil current results in a net cancellation of the magnetic torque acting on each satellite due to the Earth’s magnetic field. Although this method can be used for a formation of two satellites, it is not clear how it can be extended to formations of more than two satellites. 19 1.3. Research Objectives and Approach As discussed in the previous sections, using EMFF allows the mission life to be independent of the available fuel on board. This comes at a cost in the form of complex nonlinear and coupled dynamics of the formation, making the control problem more challenging as compared to conventional thruster based formations. * There are two factors that increase the complexity of the dynamics and control problem associated with an electromagnetic formation. Firstly the forces and torques that act on the satellites due to the magnetic fields of other satellites in the formation are nonlinear, and secondly the dynamics of each satellite is coupled to that of every other satellite in the formation since changing the magnetic field strength on one satellite affects every other satellite in the formation with a non-zero magnetic dipole. Previous work by Edmond Kong [12], Laila Elias [9] and Samuel Schweighart [10] has shown that the EMFF concept is feasible for formation flying. This thesis proposes to take this previous work a step further to find time-optimal trajectories, along with practical and feasible control schemes to track these trajectories. This will be done for a general N-vehicle electromagnetic formation in both deep-space and LEO. In summary the objectives of this thesis are: • To develop dynamic models, suitable for the design and analysis of control laws for electromagnetic satellite formations for both near-Earth and deep space missions, * Another “cost” associated with using EMFF is the thermal control problem on which parallel research is continuing. 20 • To develop a framework in which control laws can be designed for electromagnetic formations for both LEO and deep-space missions, • To develop algorithms for the generation of optimal trajectories for a general Nsatellite electromagnetic formation, • To develop algorithms for implementing the optimal trajectories in real-time, • And to test the models and control laws by using high-fidelity simulations. The required research to achieve the above mentioned objectives can be broadly divided into four distinct areas: 1. Model development, 2. Control framework, 3. Optimal trajectory generation and real-time implementation, 4. Verification in a simulated environment. Although considerable work has been done in the area of model development, new models are still needed to meet the objectives. These new models will be developed using the Lagrangian technique for general electromagnetic formations. Using these models, the control of general formations will be developed by defining a framework or architecture in which different control formulations can be designed to meet the particular mission objectives. Since the “control cost” for EMFF is zero (it uses superconductors which consume no power and electrical power can be generated abundantly using solar energy), the optimal trajectories for EMFF are essentially minimum time trajectories constrained by the system dynamics and control saturations. From a system design point 21 of view, it is important to be able to generate these time-optimal trajectories and also to actually implement these in real time. One way of real-time implementation of the optimal trajectories for complex nonlinear systems is to use the Optimal Trajectory Following Method (OTFM). Since the algorithms to generate optimal trajectories, for coupled nonlinear and constrained systems like EMFF, are computationally extensive. Therefore, from a real-time implementation point-of-view, optimal trajectories will be generated offline and then followed by separate trajectory following algorithms in real-time (see Chapters 5 and 6 for further detail). Another method of generating the trajectories, with a much lower computational burden as compared to OTFM, is to use feedback motion planning with the Artificial Potential Function Method (APFM) (see Chapter 4 for more detail). Both of these methods will be applied to general electromagnetic formations and the results will be compared. 1.4. Thesis Overview The rest of the thesis can be divided into two distinct parts as shown in Figure 1.2. Part I consists of Chapters 2 and 3 that describe the dynamics and control for general formations with a special emphasis on LEO. Chapter 2 derives the dynamics of general Electromagnetic (EM) formations using the Lagrangian method. These dynamics are suitable for simulating and designing control laws for general N-satellite EM formations in both LEO and deep-space. Chapter 2 also presents Earth’s magnetic field models. Chapter 3 presents a framework in which different control laws can be developed for general EM formations. Using this framework, nonlinear adaptive control laws are derived in Chapter 3 for formation hold and trajectory following. These adaptive control 22 laws are suitable for both LEO and deep-space applications. This chapter also presents a practical method of managing angular momentum for general EM formations in LEO. This is done by switching the direction of the dipoles by 180 resulting in net cancellation of the torque due to the Earth’s magnetic field. This method is termed dipole polarity switching control law. Part I Part II Dynamics and Adaptive Control Trajectory Generation Chapter 2 Dynamics Chapter 4 FB Motion planning using APFM Chapter 3 Adap. Cont. (LEO) Dipole polarity switching Chapter 5, 6 Optimal Traj. Generation and following Figure 1.2: Thesis organization and interdependency of chapters. Part II of the thesis consists of Chapters 4, 5 and 6 that discuss two different techniques of trajectory generation for nonlinear and constrained systems with specific application to general EM formations. Chapter 4 presents the Artificial Potential Function Method (APFM) for generating collision-free trajectories for general EM Formations. Chapters 5 and 6 present algorithms for implementing optimal trajectories for EMFF in real time. Chapter 5 presents the formulation of the optimal control problem for general EM formations. The solution to the optimal control problem is discussed using two “direct method” algorithms, namely Direct Shooting (DS) and the Legendre 23 PseudoSpectral method (LPS). Chapter 6 discusses two formulations, namely adaptive trajectory following and Receding Horizon (RH) (for implementing these optimal trajectories in real time). Thus Chapters 5 and 6 present a practical method, called the Optimal Trajectory Following Method (OTFM), of implementing optimal trajectories in real-time for coupled nonlinear and constrained systems. A comparison between APFM and OTFM is also presented in Chapter 6. The last chapter of the thesis presents a summary, and chapter-wise synopsis of key contributions of the thesis. Lastly some future directions for the research are discussed. 24 Chapter 2 Electromagnetic Formation Dynamics The purpose of this chapter is to develop models that are necessary for simulating general electromagnetic formations in LEO as well as in deep space. These models will also be used to design control laws that will be tested in a fully nonlinear simulation environment. First the dynamic equations of a general electromagnetic formation in LEO will be derived, which will act as the nonlinear verification model. Next, attitude dynamics of the satellites in the formation will be presented. Then, deep-space 2D dynamics will be derived that are suitable for simulating formations for deep space missions. After that, the Earth’s magnetic field model will be discussed; this is an essential element for simulating EM formations in LEO. The control laws need to be designed based on relative dynamics of the formation with respect to a leader satellite. These relative dynamics will be derived next and the tools required to simulate a general closed-loop formation in Matlab™ are discussed in Appendix A. 2.1. Translational Dynamic Model for LEO In this section, nonlinear equations of translational motion for general electromagnetic satellite formations will be derived in the ECI (Earth Centered Inertial) frame. The use of the ECI frame results in simpler equations as opposed to using an orbital frame (that is colocated with the body of the satellite, also sometimes called Hill’s frame). The 25 nonlinear dynamics derived here are useful for simulating a general satellite formation orbiting Earth. Moreover, for control purposes, these equations can be easily converted to relative equations of motion as presented later in this chapter. 2.1.1. Preliminaries As discussed above, the equations of motion are developed in the ECI reference frame, which has its origin at the center of Earth, its x-axis points towards vernal equinox *, zaxis towards celestial north pole, and y-axis completes a right handed axis system. This axis system is not fixed to Earth (i.e., this frame does not rotate with Earth), although it moves as Earth orbits around the sun. For the purposes of this thesis, this frame can be assumed to be an inertial frame. Moreover, relative positional dynamics will be developed in an orbital frame FRO. This orbital frame is defined in such a way that its origin is attached to the center of mass of the formation with its y-axis aligned with the position vector R RO representing the position of the formation center of mass in the ECI frame. The z-axis points towards the orbital plane normal and the x-axis completes the right hand system (see Figure 2.1). Also a body frame, FBk, attached to the body of satellite-k with its origin at the center of mass of the satellite, is also defined which defines the orientation of each satellite in the inertial space. In order to emphasize the peculiarities of electromagnetic formation control, we will restrict the dynamics to a circular orbit in order to avoid unnecessary details, although the same procedure can be used to extend the dynamics to elliptical orbits. The dynamics are derived for a general N-satellite electromagnetic formation such that the * Vernal equinox is the direction of intersection of the Earth’s equatorial plane and the plane of the Earth’s orbit around the sun (ecliptic) when the sun crosses the equator from south to north in its apparent annual motion along the ecliptic [15]. 26 satellites are enumerated from 0 to N-1, with satellite-0 designated as the “leader” satellite. Satellite j Satellite i rij FBi FBj Reference Orbit Ri r0j r0i Formation c.m. RO F Rj “Leader” RRO FB0 Earth R0 FI Figure 2.1: Geometry of different reference frames For the derivation of the relative dynamics in the orbital frame it is necessary to represent the rate of change of a vector in two different reference frames. This can be achieved by using the “Transport Theorem” [19]: FI r= FRO r+ FRO where FI denotes the ECI reference frame, FRO in frame FI, FRO FI FI ω ×r FRO (2.1) FI ω denotes the angular velocity of frame r is the velocity as observed by an observer attached to frame FI, and r is the velocity observed by an observer attached to frame FRO and, × denotes cross product. 27 2.1.2. Derivation of Translational Equations of Motion Let Ri be the position vector of the ith satellite in a general N-satellite formation. Note that R i is a vector (a geometric object) that can have many representations in a given reference frame, for example a suitable representation for R i in the ECI reference frame is: R i = xi ax + yi a y + zi az (2.2) where: ax = Unit vector that points in the direction of the vernal equinox az = Unit vector that is aligned with the celestial North Pole a y = az × ax (Note that a general vector R i is denoted in a given reference frame as Ri in the following discussion). The equations of motion will be developed using Lagrange’s method [18], which is particularly useful for incorporating the gravitational perturbation terms and the magnetic force actuation terms. The velocity of the ith satellite, modeled as a point mass, is Ri and its kinetic energy is given as: Ti = 12 mi RiT Ri where mi is the mass of the satellite and Ri = [ xi (2.3) yi zi ]T . The potential energy of the satellite in Earth’s gravitational field is given as [15]: k ⎤ ⎛ Re ⎞ ⎢1 − ∑ J k ⎜ ⎟ Pk (cos φ ) ⎥ Vi ( Ri , φ ) = − Ri ⎢ k = 2 ⎝ Ri ⎠ ⎥⎦ ⎣ g μe mi ⎡ ∞ where: 28 (2.4) μe = Gravitational constant of Earth = 398,600.4418 × 109 m3/s2 Ri = xi 2 + yi2 + zi2 Re = Equatorial Radius of Earth = 6378136.49 m Jk = kth zonal harmonic of Earth (J2 = 0.00108263, J3 = -0.00000254, J4 = 0.000000161) Pk = Legendre polynomials of the first kind φ = Angle between Earth’s North Pole direction, i.e. az and Ri Note that Eq. (2.4) accounts for the non-spherical nature of the Earth (i.e. the equatorial radius is larger than the polar radius) and assumes that Earth is symmetrical about its rotation axis hence other effects which are called tesseral and sectorial harmonics [16] are ignored. Although these effects may also be included in this expression, the J2 term is by far the dominant term and only this term will be included in further analysis in this thesis for simplicity (although the Lagrange’s method presented here allows for the addition of other terms in a straight forward manner). Equation (2.4), neglecting J3 and higher terms, gives the gravitational potential energy of the ith satellite as: 2 2 ⎤ ⎛ Re ⎞ ⎛ zi ⎞ ⎢1 − J 2 ⎜ ⎟ (3 ⎜ ⎟ − 1) ⎥ Vi ( Ri ) = − Ri ⎢ ⎥⎦ ⎝ Ri ⎠ ⎝ Ri ⎠ ⎣ g μe mi ⎡ (2.5) where we have used the fact that cos(φ ) = zi / Ri in the ECI reference frame. In a similar fashion each satellite is immersed in the magnetic field generated by other satellites, which results in magnetic forces acting on the satellite. To incorporate the effect of these magnetic fields we need to determine the magnetic potential energy of a satellite due to the magnetic field of the other satellites in the formation. Modeling the 29 coils as magnetic dipoles, the magnetic potential energy of the ith satellite due to the magnetic field of the jth satellite is given as [17]: Vijm ( Ri , R j ) = − μi i Bij (rij ) (2.6) where μi is the dipole strength of the ith satellite (which is a vector quantity since we have assumed three orthogonal coils on each satellite hence giving us the ability to control current in each coil to orient this dipole vector anywhere in Euclidean space 3 ), rij is a vector that gives the position of the jth satellite with respect to the ith satellite, B ij is the magnetic field strength due to satellite j at the location of the ith satellite, and "i" is the dot-product operator. Note that the “dipole model” of the coils on the satellites is essentially a far-field approximation of the magnetic field and gives accurate results only when the distance between the satellites is many times the radius of the coils. See Reference [10] for a detailed derivation of the far-field model of the magnetic field. Since the principle of superposition applies to the magnetic field, to determine the total magnetic potential energy of the ith satellite due to the magnetic field of all the other satellites in the formation we simply sum up the individual contributions: ⎛ N −1 ⎞ Vi m ( R0 , R1 ,..., RN −1 ) = − μi i⎜ ∑ Bij (rij ) ⎟ ⎝ j =0, j ≠i ⎠ (2.7) Equation (2.7) will be developed further a bit later in this section due to the complexity of the resulting expressions. Similarly the ith satellite also experiences the Earth’s magnetic field and its magnetic potential energy due to Earth’s magnetic field is given as: Vi mE ( Ri ) = − μi i Be ( Ri ) where Be is the Earth’s magnetic field vector at the location of the ith satellite. 30 (2.8) The equations of motion of the formation of N satellites can be derived using the Lagrange’s equations [19]: d ( Lq ) − Lq = Q dt (2.9) where: L(q, q ) = System Lagrangian = N −1 N −1 i =0 i =0 { } ∑ Ti (qi ) − ∑ Vi g (qi ) + Vi m (q) + Vi mE (qi ) , q = Vector of generalized coordinates of the system = [q0 q1 q2 … qN-1]T, qi = Generalized coordinates of the ith satellite = [xi yi zi]T, Q = Vector of generalized forces acting on the formation (such as solar pressure, drag, etc), Lq = ∂L ∂L , and Lq = ∂q ∂q From the expression of the system Lagrangian given above, it can be argued that the equations of motion of the ith satellite can be developed by considering only the Lagrangian associated with it, i.e.: d i Lq − Liqi = Qi dt i ( ) (2.10) This is possible since the kinetic energy of the ith satellite depends only on its velocity and not on the generalized coordinates of any other satellite in the formation (as we are deriving the equations in an inertial reference frame). Carrying out the gradient and time derivative operations in Eq. (2.10) we get: 31 mi xi − ∂ Vi g + Vi m + Vi mE ) = Qix ( ∂xi mi yi − ∂ Vi g + Vi m + Vi mE ) = Qiy ( ∂yi mi zi − ∂ (Vi g + Vi m + Vi mE ) = Qiz ∂zi (2.11) where the mass of the satellite, mi, is assumed to be constant and the Qi’s represent the components of the external disturbance forces acting on the ith satellite in the ECI reference frame. Using Eq. (2.5), the gradient of the gravitational potential in the ECI frame can be expressed as: ⎡ xi ⎤ μe mi ⎢ ⎥ 3μe Re2 J 2 mi ∂Vi = − 3 ⎢ yi ⎥ + 2 Ri7 Ri ∂qi ⎢⎣ zi ⎥⎦ g ⎡ xi (5 zi2 − Ri2 ) ⎤ ⎢ 2 2 ⎥ ⎢ yi (5 zi − Ri ) ⎥ ⎢ zi (5 zi2 − 3Ri2 ) ⎥ ⎣ ⎦ (2.12) Using Eq. (2.7), the gradient of the magnetic potential can be written as: ⎞ ∂ ∂ ⎛ N −1 ⎡⎣Vi m (q1 , q2 ,..., qN ) ⎤⎦ = − μi i ⎜ ∑ B j (rij ) ⎟ = ∂qi ∂qi ⎝ j =0, j ≠i ⎠ N −1 ∑ j = 0, j ≠ i F (qi , q j , μi , μ j ) = m ij FI N −1 ∑ j = 0, j ≠ i Fijm (qi , q j , μi , μ j ) (2.13) Fi (q1 ,..., qN , μ1 ,..., μ N ) m where Fijm is the magnetic force that acts on satellite-i due to satellite-j, rij = q j − qi , and FI Fi m is the net magnetic force acting on satellite-i due to all other satellites in the formation (the pre-superscript FI is added to emphasize that this force is in the ECI frame). Note that since the magnetic force is a conservative force, i.e. the change in the magnetic potential energy of a current carrying coil moving through the magnetic field is independent of the path taken by the coil, hence it can be written as the gradient of the magnetic potential. To see that this is the case, for a closed path the net work done is zero in the magnetic field: 32 ∫ F.dr = 0 and using Stoke’s theorem in 3 (2.14) [20], we can write the circulation integral of Eq. (2.14) as a curl (which is circulation per unit area at a point) as follows: ∇×F = 0 (2.15) ∇ × (∇f ) = 0 (2.16) Using the vector calculus identity: for a scalar field f ( x, y, z ) in the Euclidean space m F ij (qi , q j , μi , μ j ) = ∇Vijm = − μi i 3 , the force Fijm can be written as: ∂ B j (rij ) (2.17) ∂qi Using the dipole approximation of the coils on each satellite, the magnetic field due to the jth satellite at the location of the ith satellite can be written as [9]: B j (rij ) = μ ⎞ μ0 ⎛ 3μ j irij rij − 3j ⎟ ⎜ 5 rij ⎠ 4π ⎝ rij (2.18) Taking the gradient of Eq. (2.18), Eq. (2.17) can be written as: m F ij (qi , q j , μi , μ j ) = ( )( ) ⎞ μ ir μ ir 3μ0 ⎛ μi i μ j μ ir μ ir ⎜ − 5 rij − i 5 ij μ j − j 5 ij μi + 5 i ij 7 j ij rij ⎟ ⎟ 4π ⎜⎝ rij rij rij rij ⎠ (2.19) Note that Eq. (2.19) gives the force on dipole i (present on satellite-i) due to dipole j (located on satellite-j). It depends on the distance between the two dipoles and the orientation of both dipoles in the inertial space. It is the dependence on the orientation of the dipoles that gives rise to the complexity of the expression for the force since the orientation of a dipole depends obviously on its orientation with respect to the body 33 frame of the satellite; it also depends on the orientation of the body axes in the inertial space. A simple algebraic form of the force equation can be obtained by defining a rotated frame, Fr, such that its x-axis is aligned with vector rij (see Figure 2.2). Figure 2.2: Geometry of the Rotated Frame Fr. In this rotated frame Fr, Eq. (2.19) can be expressed as: ⎡ 2 μix μ jx − μiy μ jy − μiz μ jz ⎤ 3 μ ⎥ Fr m 0 ⎢ − μix μ jy − μiy μ jx Fij (qi , q j , μi , μ j ) = 4 ⎢ ⎥ 4π rij ⎢ ⎥ μ μ μ μ − − ix jz iz jx ⎣ ⎦ (2.20) where pre-superscript Fr is added to emphasize that this force is in frame Fr, and rij is the distance between the two dipoles and individual dipole strengths are expressed in their Cartesian components, i.e. μk = [ μkx μky μkz ]T ( k ∈ {i, j} ) in the rotated frame Fr. Note that in Eq. (2.20), the dipole components of satellite-i and satellite-j depend on their 34 respective orientations, hence the dependence of the force equations on the attitude of each satellite is implicitly embedded in the vector notation for μi and μ j . Equation (2.20) highlights the two nonlinearities associated with using magnetic dipoles as actuators. The first of these nonlinearities is associated with the magnitude of the force, which scales inversely with the distance to the fourth power. The second of these nonlinearities is associated with both the magnitude and direction of the force as these depend upon the product of the individual components of the two dipoles. This second nonlinearity highlights the coupled nature of the magnetic actuation, i.e., modifying one dipole on one of the satellites in the formation results in the change of force on every other satellite in the formation with non-zero magnetic dipole. Since we need the magnetic forces between the satellites in the ECI reference frame, we can use Eq. (2.19) directly or we can use Eq. (2.20) after multiplying it with the transformation matrix as follows: FI where FI Fijm (qi , q j , μi , μ j ) = FI T Fr Fr Fijm (qi , q j , μi , μ j ) (2.21) T Fr is the orthogonal transformation matrix from the rotated frame to the inertial ECI reference frame. Such a matrix can be constructed since we need two principal rotations of the ECI reference frame to align it with the rotated frame Fr. We first rotate the ECI reference frame about its z-axis by an angle ψ and then the resulting frame is rotated about its y-axis by an angle θ to complete the orientation to frame Fr. Thus the transformation matrix from the ECI to the Fr frame can be written as [21]: Fr T FI ⎡cos θ = ⎢⎢ 0 ⎢⎣ sin θ 0 − sin θ ⎤ ⎡ cosψ 1 0 ⎥⎥ ⎢⎢ − sinψ 0 cos θ ⎥⎦ ⎢⎣ 0 35 sinψ cosψ 0 0⎤ 0 ⎥⎥ 1 ⎥⎦ (2.22) The inverse transformation from the Fr frame to the ECI reference frame FI is given simply by the inverse of the matrix Fr T FI (which is equal to its transpose). The angles ψ and θ can be determined from the vector rij as follows: ⎛ rij − x ⎜r ⎝ ij − y ⎞ ⎟⎟ ⎠ ψ = tan −1 ⎜ ⎛r θ = sin ⎜ ij − z ⎜ rij ⎝ −1 ⎞ ⎟ ⎟ ⎠ (2.23) where rij − x , rij − y , and rij − z are the x, y and z-components, respectively, of the vector rij in the ECI reference frame. Moreover, the magnetic dipoles of each satellite are needed in the ECI reference frame to use Eq. (2.19). For that we need the transformation matrices from the body frame of each satellite to the global ECI reference frame, which are described in the next section where the attitude dynamics will be discussed. In a similar fashion, the gradient of the Earth’s magnetic potential gives the force on the ith satellite due to the Earth’s magnetic field. It will be shown later in this chapter (when Earth’s magnetic field model will be discussed) that this gradient is extremely small as compared to other forces present in the system and can safely be ignored for the purposes of this thesis. After combining these results with Eqs. (2.11), we obtain the translational dynamics of the ith satellite in the ECI reference frame as follows: mi xi + mi yi + mi zi + μe mi xi Ri3 μe yi mi 3 i R μe zi mi 3 i R + 3μe Re2 J 2 mi 2 ( Ri − 5 zi2 ) xi = 2 Ri7 + 3μe Re2 J 2 mi 2 ( Ri − 5 zi2 ) yi = 7 2 Ri FI 3μe Re2 J 2 mi + (3Ri2 − 5 zi2 ) zi = 7 2 Ri Fixm (q1 ,..., qN , μ1 ,..., μ N ) + FI Fdix FI Fiym (q1 ,..., qN , μ1 ,..., μ N ) + FI Fdiy FI 36 Fizm (q1 ,..., qN , μ1 ,..., μ N ) + FI Fdiz (2.24) In these equations the notation has been changed from Q to Fd to emphasize that these are disturbance forces. Also note that Eqs. (2.24) include the J2 perturbations and describe the translational dynamics of the ith satellite in the ECI reference frame. These equations, along with Eq. (2.19), can be used to simulate a general electromagnetic formation around Earth in the ECI frame and act as a nonlinear verification model for validation and testing of control laws developed in a later chapter. Moreover, these equations can be used to find the relative orbital dynamics of the satellites as discussed later in this chapter. 2.2. Attitude Dynamics Including Gyro-Stiffening Effects As discussed previously a fully actuated satellite that has three orthogonal coils can control all the relative translational degrees of freedom. One side effect of applying any shear force using magnetic dipoles is that a torque also acts on the dipoles; therefore to control the attitude of a satellite and to counter this magnetic torque, each satellite in the formation needs to have angular momentum storage devices such as reaction wheels or Control Moment Gyros (CMGs). In this section, the attitude dynamics of a satellite in an electromagnetic formation will be presented in a simple form in order to highlight the control issues associated with attitude control. For example, it is assumed that the reaction wheels are mounted rigidly on the satellite (see [9] for modeling details for flexible mountings of the reaction wheels). It will be assumed that each satellite has three orthogonal reaction wheels and their gyro-stiffening effect will also be included in the dynamic equations. For a rigid body rotating about its center of mass, the rate of change of the angular momentum is related to the applied torques and is given by the Euler equation [21]: 37 FI (2.25) H =τ where H is the total angular momentum of the satellite (including that of the reaction wheels), due to its rotation about its center of mass, and τ is the external torque acting on the satellite. Using the Transport Theorem, Eq. (2.1), Eq. (2.25) can be written in terms of the rate of change of angular momentum in the body frame of the satellite as: H +ω × H =τ (2.26) where ω is the angular velocity of the satellite in the inertial frame. The angular momentum of the satellite can be written as the sum of satellite body momentum (without reaction wheels spinning) and the reaction wheel momentum: H = H B + H RW (2.27) Using Eq. (2.27) the attitude dynamics can be written as: m H B + H RW + ω × H B + ω × H RW = τ + τ where τ m d (2.28) is the magnetic torque acting on the satellite due to the magnetic field of other satellites in the formation and τ d is the disturbance torque (such as due to Earth’s magnetic field). Moreover the rate of change of angular momentum of the reaction wheels acts as a torque on the satellite body frame, therefore we can write Eq. (2.28) as: m d H B + ω × H B + ω × H RW = τ + τ − τ RW (2.29) Let I and IRW be the inertia matrices of the satellite and reaction wheels, respectively; then since H B = I ω and H RW = I RW Ω (where Ω is the reaction wheel’s angular velocity vector), under the assumptions that the satellite body axes are aligned with the principal axes and the reaction wheels are also aligned with the satellite body axes, Eq. (2.29) reduces to following attitude dynamic equations: 38 I1ω1 + ( I 3 − I 2 )ω2ω3 + ω2 I RW 3Ω3 − ω3 I RW 2Ω 2 = τ mx + τ dx − τ RWx I 2ω2 + ( I1 − I 3 )ω1ω3 + ω3 I RW 1Ω1 − ω1 I RW 3Ω3 = τ my + τ dy − τ RWy (2.30) I 3ω3 + ( I 2 − I1 )ω1ω2 + ω1 I RW 2 Ω 2 − ω2 I RW 1Ω1 = τ mz + τ dz − τ RWz where ω = [ω1 ω2 ω3 ]T is the angular velocity of the satellite in the ECI reference frame, and ⎡ I1 I = ⎢⎢ 0 ⎢⎣ 0 I RW 0 I2 0 ⎡ I RW 1 = ⎢⎢ 0 ⎢⎣ 0 0⎤ 0 ⎥⎥ = the inertia matrix for the satellite, I 3 ⎥⎦ 0 I RW 2 0 0 ⎤ 0 ⎥⎥ I RW 3 ⎥⎦ = the inertia matrix for the reaction wheels, τ m = [τ mx τ my τ mz ]T , τ d = [τ dx τ dy τ dz ]T , and τ RW = [τ RWx τ RWy τ RWz ]T = torques expressed in the satellite body frame (aligned with principal axes). Note that Eqs. (2.30) are the simplest possible form of attitude dynamics for an EMFF satellite with three orthogonal reaction wheels which are aligned with the principal axes of the satellite. The orientation of the satellite in the inertial frame can be related to the body axis angular rates through either Euler angles or quaternions as follows [22]: 1 q = − Q(q )ω 2 (2.31) θ = M (θ )ω (2.32) where: q = [q0 q1 q2 T q3 ] = a quaternion vector, θ = [θ1 θ 2 θ3 ]T = Euler angle vector, and the matrices Q and M are defined by 39 ⎡ q1 ⎢ −q = Q(q) ⎢ 0 ⎢ − q3 ⎢ ⎣ q2 q3 ⎤ −q2 ⎥⎥ , q1 ⎥ ⎥ − q0 ⎦ q2 q3 − q0 − q1 ⎡1 sin θ1 tan θ 2 M (θ ) = ⎢⎢0 cos θ1 ⎢⎣0 sin θ1 sec θ 2 cos θ1 tan θ 2 ⎤ − sin θ1 ⎥⎥ . cos θ1 sec θ 2 ⎥⎦ Note that by using quaternions we can avoid the singularities present in using Euler angles, but if there are no large angle slews then Euler angles can be used as well, while avoiding the singularities. 2.2.1. Magnetic Torque The magnetic torque term in Eq. (2.28) can be written as: m τi = N −1 ∑ m τ ij (2.33) j = 0, j ≠ i m where τ ij is the magnetic torque acting on the satellite-i dipole due to the satellite-j dipole. This torque can be written as: m τ ij = μi × B j (rij ) (2.34) where the terms are as defined in Eq. (2.17). Again, as we did in the case of magnetic force, using the dipole approximation of the coils on each satellite, the magnetic torque on the ith satellite due to the jth satellite can be written using Eq. (2.18) as follows: m τ ij = μ0 μi ⎛ 3rij ( μ j irij ) μ j ×⎜ − 3 4π ⎜⎝ rij5 rij ⎞ ⎟ ⎟ ⎠ (2.35) Again the expression for torque is complicated by the fact that torque depends upon the orientation of both the source and target dipoles. As in the case of magnetic force, a 40 simple expression for magnetic torque can be derived in a rotated frame Fr as defined for Eq. (2.20): Fr ⎡ − μiy μ jz + μiz μ jy ⎤ μ0 ⎢ ⎥ τ = 2 μiz μ jx + μix μ jz ⎥ 3 ⎢ 4π rij ⎢ − μix μ jy − 2 μiy μ jx ⎥ ⎣ ⎦ m ij (2.36) Equation (2.36) highlights the nonlinearities associated with magnetic torque, which were also present with magnetic force, but with one important difference, namely the magnitude of the magnetic torque is inversely proportional to distance to the 3rd power (as opposed to the force that depends on the distance to the 4th power). Therefore, the same magnetic field can produce much stronger torque, as compared to force, in a given dipole (the reason that magnetic torquers are used for satellite attitude control [23]) although for EMFF this may act as a negative factor during the system design process. In order to compute the magnetic torque using Eq. (2.35), we need to express the magnetic dipoles μi and μ j in the ECI reference frame as is the case for computing the force using Eq. (2.19). For that we need transformation matrices for each satellite to transform a vector from the body frame FBi to the inertial frame FI and vice versa. This can be achieved using the Euler angles as follows: FBi where T FI FBi 0 ⎡1 ⎢ = ⎢ 0 cos θ 3 ⎢⎣ 0 − sin θ 3 0 ⎤ ⎡ cos θ 2 sin θ 3 ⎥⎥ ⎢⎢ 0 cos θ 3 ⎥⎦ ⎢⎣ sin θ 2 0 − sin θ 2 ⎤ ⎡ cos θ1 1 0 ⎥⎥ ⎢⎢ − sin θ1 0 cos θ 2 ⎥⎦ ⎢⎣ 0 sin θ1 cos θ1 0 0⎤ 0 ⎥⎥ 1 ⎥⎦ (2.37) T FI is the transformation matrix from the ECI frame FI to the satellite-i body frame FBi. Note that this is just one of the possible twelve ways in which the transformation matrix can be defined using Euler angles and this form is most common in aerospace applications (see reference [21] page 20). The transformation defined by Eq. (2.37) corresponds to first rotating the inertial frame about its z-axis by the angle θ1 , then 41 the resulting intermediate frame is rotated about its y-axis by the angle θ 2 , and finally this second resulting intermediate frame is rotated about its x-axis by the angle θ3 . Moreover the inverse transformation, i.e., the transformation of a vector from the satellite-i body frame to the inertial frame is the inverse of the above matrix which is simply given by the transpose of the matrix since it is orthonormal: FI T FBi = ( FBi T FI ) T (2.38) It is a bit more efficient, from a computational point of view, to use quaternions to define the rotation matrix. The FBi to FI transformation matrix in terms of quaternions can be expressed as [22]: FI T FBi ⎡ 2q02 + 2q12 − 1 2q1q2 + 2q0 q3 2q1q3 − 2q0 q2 ⎤ ⎢ ⎥ = ⎢ 2q1q2 − 2q0 q3 2q02 + 2q22 − 1 2q2 q3 + 2q0 q1 ⎥ ⎢ 2q1q3 + 2q0 q2 2q2 q3 − 2q0 q1 2q02 + 2q32 − 1 ⎥ ⎣ ⎦ (2.39) and the inverse transformation is given by Eq. (2.38). 2.3. Earth’s Magnetic Field Model A very important factor present in the disturbance torque term in Eq. (2.28) is the torque that acts on the satellite due to the Earth’s magnetic field. This torque can be written as: e τ i = μ i × B e ( Ri ) (2.40) where B e is Earth’s magnetic field strength at the location of the satellite. It is a vector quantity and varies both with location and time. At orbital altitudes, the magnetic field of the Earth can be described as a combination of two components as follows: B e ( Ri , t ) = B m ( Ri , t ) + B d ( Ri , t ) (2.41) where B m ( R i , t ) is the main field component, which is due to the core of the planet, and B d ( R i , t ) is a disturbance component (that can be as much as 10% of the main field at 42 different orbital locations), which is due to sources such as currents in the ionosphere and solar wind effects on the Earth’s magnetosphere [24]. Note that Eq. (2.41) includes time as an independent variable to emphasize that the magnetic field varies slowly over time. At the surface of the Earth, the main field component has two sources, namely due to the core of the planet and magnetized rocks near the surface of the Earth. But at orbital altitudes, we can ignore the effect of magnetized rocks. 2.3.1. Tilted Dipole Model of the Earth’s Magnetic Field Main Component The main field of Earth (see Figure 2.3) can be modeled as a tilted dipole located at the center of the earth. The orientation of this dipole varies slowly over time and the current magnetic North pole location is at 71.78º W and 79.74º N (2005 estimate) [25]. Figure 2.3: The main magnetic field generated by dynamo action in the hot, liquid outer core. Above Earth’s surface, nearly dipolar field lines are oriented outwards in the southern and inwards in the northern hemisphere (source [25]) By defining a geomagnetic reference frame Fm, the magnetic field at the location of satellite i can be computed using Eq. (2.18) as follows. Let Rim = [ xi 43 yi zi ]T be the location of the ith satellite in the magnetic reference frame Fm. Since, in the magnetic frame, the Earth’s magnetic dipole is oriented along the z-axis (see Figure 2.3), i.e. μe = [0 0 − μm ]T where μm is the dipole strength of the Earth’s magnetic field which approximately equals 8.0×1022 A-m2 (see page 14 of reference [26]), we can expand Eq. (2.18) as follows: Fm ⎡ xi zi ⎤ 3μ 0 μ m ⎢ Be ( Ri ) = − yi zi ⎥⎥ 5 ⎢ 4π Rim 2 ⎢⎣ zi − Rim2 / 3⎥⎦ (2.42) or, in terms of the latitude and longitude of the satellite in the magnetic reference frame, we have: xi = Rim cos λm cosη m yi = Rim cos λm sin ηm (2.43) zi = Rim sin λm where η m is the magnetic longitude and λm is the latitude with respect to the geomagnetic equatorial plane. Using the above equations, Eq. (2.42) can be written as: Fm ⎡3sin λm cos λm cosη m ⎤ μ0 μ m ⎢ 3sin λm cos λm sin η m ⎥⎥ Be ( Ri ) = − 3 ⎢ 4π Ri ⎢⎣ ⎥⎦ 3sin 2 λm − 1 (2.44) The magnetic torque on satellite i can be approximated by using Eqs. (2.40) and (2.44). Note that in order to use Eq. (2.42) or Eq. (2.44), the location of the satellite must be expressed in the frame Fm. This can be done by first transforming the coordinates of the satellite in the ECI frame to the ECEF (Earth Centered Earth Fixed) reference frame by using the following rotation matrix: FE T FI ⎡ cos φe = ⎢⎢ − sin φe ⎢⎣ 0 sin φe cos φe 0 44 0⎤ 0 ⎥⎥ 1 ⎥⎦ (2.45) where φe is the rotation angle of Earth in the ECI reference frame. This angle can be computed using the following relation: φe = φ0 + ωet (2.46) where: φ0 = Greenwich longitude w.r.t. vernal equinox (x-axis of ECI) at t = 0 ωe = Rotation rate of Earth = 7.2722 × 10-5 rad/s t = Simulation time The transformation matrix from ECEF to the magnetic frame Fm is given by: Fm T FE ⎡cos λMP = ⎢⎢ 0 ⎢⎣ sin λMP 0 − sin λMP ⎤ ⎡ cos φMP ⎥ ⎢ − sin φ 1 0 MP ⎥⎢ 0 cos λMP ⎥⎦ ⎢⎣ 0 sin φMP cos φMP 0 0⎤ 0 ⎥⎥ 1 ⎥⎦ (2.47) where: λMP = Colatitude of the magnetic North Pole = 10.26° (2005 estimate) φMP = Longitude of the magnetic North Pole = -71.78° (2005 estimate) It should be noted that the tilted dipole model of the Earth’s magnetic field is only an approximation of the main field component and it can have significant errors in LEO, although this error reduces with increasing altitude [24]. For a more realistic model of the Earth’s magnetic field, existing geomagnetic models such as IGRF (International Geomagnetic Reference Field) or WMM (World Magnetic Model) can be used. Since these models also give only the Earth’s main field components, it is essential that any control scheme for EMFF must account for the uncertainty present in the magnetic model by using online estimation or direct measurement. 45 2.3.2. Full Representation of the Main Field using Spherical Harmonic Analysis Away from the sources (i.e. current) the magnetic field can be computed from the solution of Laplace’s Equation [17]: ∇ 2Vm = 0 (2.48) where Vm is the magnetic potential function. The magnetic field itself is given by the gradient of the potential function, i.e.: B = −∇Vm (2.49) In spherical coordinates, Eq. (2.48) can be written as: ∂Vm ⎞ ∂ 2Vm 1 ∂ 2 (rVm ) 1 ∂ ⎛ 1 + sin + =0 θ ∂θ ⎟⎠ r 2 sin 2 θ ∂φ 2 r ∂r 2 r 2 sin θ ∂θ ⎜⎝ (2.50) where: θ = colatitude, φ = longitude, r = radius. A solution to the above equation can be obtained by the method of separation of variables and has the following form [27]: ∞ ⎛a⎞ Vm = a ∑ ⎜ ⎟ n =1 ⎝ r ⎠ n +1 n ∑ ⎡⎣ g m =0 m n cos ( mφ ) + hnm sin ( mφ ) ⎤⎦ Pnm (θ ) (2.51) where g nm and hnm are time dependent Gauss coefficients, Pnm are associated Legendre polynomials of order m and degree n, and a is the standard magnetic reference radius of Earth (6371.2 km). Note that this solution assumes that there are no sources external to Earth, which can be seen from the fact that Vm approaches zero for large r. The general solution to Laplace’s Equation can be seen as an infinite combination of terms, where each of these terms satisfies Laplace’s Equation. These terms, namely 46 Pnm (θ ) cos ( mφ ) and Pnm (θ ) sin ( mφ ) are called spherical harmonics and have a nice property that they are orthogonal to each other (see reference [27] for detail). The orthogonality of these spherical harmonics enables us to determine the unknown Gauss coefficients by fitting the model given by Eq. (2.51) to a set of carefully measured data. The resulting problem is a set of linear equations that can be solved by using least-square estimation techniques [25]. The resulting set of coefficients is what essentially comprises the WMM (World Magnetic Model). These coefficients, along with Eqs. (2.51) and (2.49), can be used to estimate the main component of the Earth’s magnetic field at the desired location in the ECEF reference frame. It should be pointed out that the first three terms of the WMM, namely g10 , g11 , and h11 , correspond to the tilted dipole model of the Earth’s magnetic field. The strength of the tilted dipole is related to these first three coefficients as follows: μm = 4π Re3 μ0 ( g ) + ( g ) + (h ) 0 2 1 1 2 1 1 2 1 (2.52) According to WMM2005, the values of the first three coefficients are -29556.8, -1671.7, and 5079.8, respectively [25]. Using these values gives us the dipole strength of 7.7681×1022 A-m2. Using these coefficients, the colatitude λMP and longitude φMP of the titled dipole can be computed as follows [26]: ⎛ (h1 ) 2 + ( g 1 ) 2 1 1 λMP = − tan ⎜ ⎜ g10 ⎝ 1 −1 ⎛ h1 ⎞ φMP = tan ⎜ 0 ⎟ ⎝ g1 ⎠ −1 ⎞ ⎟ ⎟ ⎠ (2.53) The two models are compared for the Earth’s B-field values for a LEO orbit as shown in Figure 2.4. As can be seen, there is significant difference between the results of 47 the two models and the tilted model can be off from the WMM2005 by as much as 50%. Hence it is important that for realistic simulations, the more accurate WMM2005 or IGRF must be used. But, for the purposes of evaluating the performance of the EMFF system from a dynamics and control perspective, the tilted dipole model (which is simpler to simulate) provides enough detail and is sufficient for the purposes of this thesis. 4 2 x 10 4 Bx (x-comp. of Earth's B-field) 4 x 10 By (y-comp. of Earth's B-field) WMM2005 Tilted Dipole 2 nT nT 1 0 -1 0 -2 WMM2005 Tilted Dipole -2 -100 -50 4 5 x 10 0 latitude (deg) 50 -4 -100 100 -50 4 Bz (z-comp. of Earth's B-field) 5 0 latitude (deg) 50 100 B-mag x 10 4 nT nT 3 0 2 WMM2005 1 WMM2005 Tilted Dipole Tilted Dipole -5 -100 -50 0 latitude (deg) 50 0 -100 100 -50 0 latitude (deg) 50 100 Figure 2.4: Comparison of the tilted dipole model and WMM2005 model for a polar circular LEO orbit at an altitude of 500 km (the longitude is fixed at -71°) 2.3.3. Disturbance Force due to Earth’s Magnetic Field Another aspect that can be seen from Eq. (2.44) is that the magnitude of the gradient of the Earth’s magnetic field scales as: 48 ∇Be ∼ μ0 μm Ri4 (2.54) This results in a value of roughly 10-10 Wb/m3 (for a 500 km orbit) which would result in a force less than 1 μN on a dipole having a strength of 104 A-m2. Since inter-dipole forces in an electromagnetic formation are generally of the order of 1 mN, one can safely ignore the magnetic force on the formation due to Earth’s magnetic field and consider it as a disturbance force in the control design process. If this force is significant, as compared to inter-dipole forces, then it can be explicitly taken into account. 2.4. Deep Space 2D Dynamics In previous sections, the dynamics of electromagnetic formations in LEO was discussed, which is suitable for deep space missions as well if we drop the gravity terms and neglect the Earth’s magnetic field. Nevertheless, many deep space missions can be captured effectively by using simplified 2D dynamics, e.g., in telescope slew maneuvers which are essentially planar and can be described by 2D dynamics. Moreover, the EMFF testbed [29] dynamics are also 2D. In these cases, it is much easier to work with the simplified 2D dynamics rather than the full 3D dynamics discussed in last sections. Therefore, in this section 2D deep space dynamics for an N-satellite electromagnetic formation will be derived. It is assumed that each satellite in the formation has two identical orthogonal coils and one reaction wheel to store the angular momentum along the z-direction (see Figure 2.5). 49 Figure 2.5: EMFF coils, reaction wheel and coordinate frame definition for 2D dynamics The deep space equations of motion in 2D of the ith satellite in the formation in an inertial frame are given by (using Eqs. (2.24) and (2.30)): mi xi = Fxi (x, y, α , μ ) + Fdxi mi yi = Fyi (x, y, α , μ ) + Fdyi (2.55) I iα i = τ im (x, y, α , μ ) − τ iRW + τ di where mi is the mass of the ith satellite, Ii is the moment of inertia of the satellite about the z-axis, (xi, yi) define the location of the satellite in the inertial frame (whose center is assumed to be located at the center of mass of the formation), αi is the rotation angle of the satellite about the z-axis. The Fd’s and τ d ’s are the disturbance forces and disturbance torques, respectively, acting on the satellite. Fxi and Fyi are the components of the net magnetic force while τ im and τ iRW are the net magnetic torque and reaction wheel torque, respectively. These magnetic forces and torques depend on the location, orientation and magnetic moments of each satellite in the formation, whose vectors are defined as follows: x = [ x1 x2 α = [α1 α 2 xN ]T , y = [ y1 yN ]T y2 α N ]T , μ = [ μ1x 50 μ1 y μ Nx μ Ny ]T (2.56) The magnetic forces and torques acting on each satellite in the formation due to the magnetic moments of the other satellites can be derived by approximating each coil by a magnetic dipole. This approximation, also known as the far-field approximation, gives the force and torque, on dipole i due to dipole j, with magnetic moments μi and μ j , as given by Eq. (2.19) and Eq. (2.35), respectively. The two orthogonal coils give each satellite the ability to control the direction and magnitude of the magnetic moment vector in a plane. We define the magnetic moment of a coil as follows: μic = ni Ai I i (2.57) where ni, Ai and Ii are the number of turns, the area enclosed by the coil and the current flowing through the coil, respectively. For a fixed coil geometry, the magnetic moment is varied by changing the current, Ii, and thus it acts as the control input for the system. We can represent the two coils as a single “steer-able” dipole with magnitude (μi) and direction (βi) as follows: μi = μix2 + μiy2 β i = tan −1 μiy μix (2.58) This representation helps in writing the force and torque on the ith satellite, due to the magnetic moment on the jth satellite, more compactly, by expanding Eq. (2.19) and Eq. (2.35) as follows (refer to Figure 2.6): Fij = − 3μ0 μi μ j ⎡sin ai sin a j − 2 cos ai cos a j ⎤ ⎢ ⎥ 4π dij 4 ⎣ cos ai sin a j + sin ai cos a j ⎦ (2.59) μ 0 μi μ j ( cos ai sin a j + 2sin ai cos a j ) 4π dij 3 (2.60) τ ij = − where Fij is the magnetic force acting on satellite i due to satellite j, τ ij is the torque acting on satellite i due to satellite j and dij is the distance between the two satellites, i.e.: 51 dij = ( xi − x j ) 2 + ( yi − y j ) 2 (2.61) The total magnetic force on the ith satellite can be found by summing the force contributions from all the remaining satellites in the formation, as the principle of superposition applies to the total magnetic field of the formation. In doing so, it should be noted that the angles ai and aj in Eqs. (2.59) and (2.60) are measured from a line connecting the center of masses of the satellites and, the forces Fij are in this rotated frame of reference. Therefore, we need to transform the forces from this rotated frame to the global frame by multiplying the force vector with a transformation matrix Mij given as: ⎡cos θij M ij = ⎢ ⎣ sin θij − sin θij ⎤ cos θij ⎥⎦ (2.62) xr N aj yr γi N ai dipole j θ ij dipole i Figure 2.6: Geometry of steerable dipoles for magnetic force and torque computation. where: ⎛ y j − yi ⎜ x j − xi ⎝ θij = tan −1 ⎜ 52 ⎞ ⎟⎟ ⎠ (2.63) Substituting the total magnetic force and torque on each satellite into Eqs. (2.55), we obtain: ⎡sin ai sin a j − 2 cos ai cos a j ⎤ ⎫⎪ ⎡ Fdxi ⎤ ⎡ mi xi ⎤ ⎧⎪ N −3μ0 μi μ j ⎢ m y ⎥ = ⎨ ∑ 4π d 4 M ij ⎢ cos a sin a + sin a cos a ⎥ ⎬ + ⎢ F ⎥ i j i j ⎦⎪ ⎣ i i ⎦ ⎪⎩ j =1, j ≠i ij ⎣ ⎭ ⎣ dyi ⎦ μ μi μ j I iα i = ∑ − 0 3 ( cos ai sin a j + 2sin ai cos a j ) − τ iRW + τ di 4π dij j =1, j ≠ i N (2.64) For an N-satellite formation in 2D there are 3N control inputs where each satellite has the control vector: ui = [ μix μiy τ iRW ]T (2.65) Note that in Eqs (2.64) we are using a polar representation of the magnetic moments (Eqs (2.58)) where the angle β is related to other angles in Figure 2.6 as follows: γ i = α i + βi = θij + ai (2.66) From inspection of Eqs (2.64), it is clear that the magnetic moments appear as product pairs and hence the right hand side of the equation is a polynomial in the control inputs with each term having a degree two while the coefficients of these polynomials are nonlinear functions of the current state of the formation. Another important aspect of these dynamics is that the magnetic force and torque between two dipoles decays rapidly with the distance between the dipoles, therefore in close proximity the satellites have much more control authority as compared to when they are farther apart. It should be pointed out that since the magnetic forces are only internal to the system, the linear momentum of the center of mass of the whole formation cannot be changed. Although this is not a limitation as far as formation flying is concerned (since for formation flying it is only the relative position and orientation of the satellites that needs to be controlled), it has a consequence for the dynamics in Eqs (2.64) since two of 53 the equations in this set are actually dependent upon the other equations. This dependence is also evident from the fact that the sum of the magnetic forces must be zero and hence one of the satellites has essentially “free” or dependent dynamics. This set of “free” dynamics needs to be explicitly taken into account while developing any control laws, as done in the following chapters. This dependence can be explicitly stated as follows: N L = ∑ mi v i = constant i =1 N H = ∑ ( I iα i + I iRW ωiRW + mi ri × v i ) = constant (2.67) i =1 where L is the total linear momentum and H is the total angular momentum of the formation. 2.5. Relative Translational Dynamics In this section relative translational dynamics applicable to general EM formations in LEO will be presented since the formation translational control is based on relative dynamics which can easily be derived from Eqs. (2.24). Ignoring the J2 terms for simplicity, the translational dynamics of satellite-i in the ECI frame can be written compactly using vector notation as: mi R i + μe mi Ri Ri3 m = F i + F di (2.68) Similarly the dynamics of satellite-k are given as: mk R k + μe mi Rk 3 k R m = F k + F dk (2.69) Subtracting Eq. (2.69) from Eq. (2.68), we obtain the dynamics of satellite-i relative to satellite-k in the ECI reference frame as: 54 r ki + μe ( R k + rki ) R k + rki 3 − μe R k Rk3 m m m m F i F k F di F dk = − + − = f i − f k + f di − f dk mi mk mi mk (2.70) For deriving a relative position control law, it is more advantageous to work in the non-inertial orbital coordinates FRO as defined previously. For this purpose we will express the relative dynamics of satellite-i in the orbital reference frame FRO, located at center of mass of the formation. Although this derivation can also be done in an orbital frame attached to the “leader” satellite (as done in [32]), the leader satellite will be maneuvering in general so its orbital velocity would not be a constant; while for electromagnetic formations, the center of mass of the formation cannot be moved during maneuvering using Electromagnetic actuation. Therefore, it is more accurate to use an orbital reference frame attached to the center of mass of the formation as opposed to the leader satellite. For simplicity we will assume a circular orbit for the formation for which the angular velocity of the reference orbit is simply: FRO FI ω = ω0 l z (2.71) where ω0 is the orbital mean motion given by Eq. (1.2) (which is constant for a circular orbit), and lz is a unit vector pointing along the z-axis of frame FRO. Using the Transport Theorem Eq. (2.1), the inertial acceleration can be transformed to the orbital coordinate system as: FI r= FRO r +2 FRO FI ω ×r + FRO FI ω × FRO FI ω ×r (2.72) By expressing the relative position of satellite-i in the orbital reference frame FRO as: rki = xki lx + yki l y + zki lz 55 (2.73) and using Eqs. (2.70) and (2.71), the relative dynamics of satellite-i with respect to satellite-k in the orbital reference frame FRO can be written as: xki − 2ω0 yki − ω02 xki + yki + 2ω0 xki − ω02 yki + zki + where f m μe zki Ri3 μe xki = f ixm − f kxm + fixd − f kxd 3 i R μe ( Rk + yki ) 3 i R μe − Rk2 = fiym − f kym + f iyd − f kyd (2.74) = fizm − f kzm + f izd − f kzd and f d are specific magnetic force components and specific disturbance force components, respectively, expressed in the orbital frame FRO. These equations will be used in Chapter 4 for the derivation of translational control laws in LEO. One difficulty associated with using Eqs. (2.74) is that we need to express all the terms in the orbital reference frame FRO. Since there is no physical object present at the location of the center of mass, no direct observations can be made regarding its position or velocity. Nevertheless, these can be deduced from the combined measurements of the satellites in the formation as follows. The location of the center of mass of the whole formation is given as: N −1 RRO = ∑m R i =0 N −1 i i (2.75) ∑ mi i =0 Similarly the velocity of the formation center of mass would be given as: N −1 RRO = ∑m R i =0 N −1 i i ∑m i =0 i 56 (2.76) We also need to determine the transformation matrix that transforms the vectors from the ECI frame FI to the orbital frame FRO. Since the y-axis of FRO points in the direction of the vector RRO , we have: yˆ RO = RRO (2.77) RRO where yˆ RO is a unit vector pointing along the y-axis of the frame FRO. Similarly, for a circular orbit, we have: xˆ RO = − RRO (2.78) RRO where xˆRO is a unit vector pointing along the x-axis of the frame FRO. Finally a unit vector along the z-axis of the frame FRO is given by: zˆRO = xˆRO × yˆ RO Let FI (2.79) T FRO be the transformation matrix from the orbital frame to the ECI frame. Then, we have the following relations: ⎡ vOx ⎤ ⎡1 ⎤ ⎢ v ⎥ = − FI T FRO ⎢0 ⎥ , ⎢ Oy ⎥ ⎢ ⎥ ⎢⎣ vOz ⎥⎦ ⎢⎣0 ⎥⎦ ⎡ rOx ⎤ ⎡0⎤ ⎢ r ⎥ = FI T FRO ⎢1 ⎥ , ⎢ Oy ⎥ ⎢ ⎥ ⎢⎣ rOz ⎥⎦ ⎢⎣ 0⎥⎦ ⎡ rOy vOz − rOz vOy ⎤ ⎡0⎤ ⎢ ⎥ FI FRO ⎢ ⎥ ⎢ rOz vOx − rOx vOz ⎥ = T ⎢0⎥ ⎢ rOx vOy − rOy vOx ⎥ ⎢⎣1 ⎥⎦ ⎣ ⎦ (2.80) where the parameterization of the unit vectors in the ECI reference frame are defined as: yˆ RO = ⎡⎣ rOx xˆ RO = − ⎡⎣vOx rOy vOy T rOz ⎤⎦ , T vOz ⎤⎦ . Combining the relations given in Eqs. (2.80) and taking the inverse (or transpose) we obtain: 57 FRO T FI ⎡ −vOx ⎢ rOx =⎢ ⎢ rOy vOz − rOz vOy ⎣ −vOy rOy rOz vOx − rOx vOz ⎤ −vOz ⎥ rOz ⎥ rOx vOy − rOy vOx ⎥⎦ (2.81) Using this transformation matrix we can transform the measurements from the ECI reference frame to the orbital frame and, the relative dynamics, given by Eqs. (2.74), can be used to design control laws for controlling the formation in LEO as will be presented in Chapter 3. 2.6. Summary This chapter discusses both the translational and attitude dynamics of a general electromagnetic formation. These dynamics are suitable for simulating a general EM formation in a circular orbit around the Earth for the purpose of evaluating control laws that can be derived based on these dynamics. Earth’s magnetic field models are also discussed that are required for simulating EM formations in LEO. This chapter also discusses the simplified deep-space 2D dynamics that are suitable for some missions. Lastly the relative dynamics are derived that are needed for the derivation of the control laws. 58 Chapter 3 Control of EM Formations in LEO As discussed in Chapter 1, from a system design point of view, EMFF has the greatest potential for formations that require high delta-V for formation hold or formation reconfiguration. High delta-V requirements translate directly into fuel mass for conventional thruster-based systems and, over long mission lifetimes, EMFF may be the only option to hold the formation. One such region where EMFF can be superior to using conventional thrusters is Low Earth Orbit (LEO). In LEO, due to the proximity to Earth, certain formations require high delta-V over their mission lifetime. Electromagnetic formations on the other hand can hold the formation in LEO indefinitely, barring any system failure. Unfortunately one of the complications for EMFF in LEO is the strong magnetic field of the Earth that induces very-high disturbance torques on the EMFF satellites and angular momentum management can be an issue. On the other hand the magnetic field of the Earth can be used as an asset, since the angular momentum accumulated in the reaction wheels can be dumped into the Earth’s magnetic field [10]. The purpose of this chapter is to formulate a framework in which control laws can be designed for EMFF in LEO. Within this framework, practical control laws will be derived for the control of a general electromagnetic formation in LEO. Angular momentum management will be accomplished by exploiting the nonlinearity of the magnetic dipoles by defining a “dipole polarity switching control law.” Furthermore, 59 these control laws can be readily extended to deep-space missions where the complicating factor of Earth’s magnetic field would be absent. 3.1. Control Framework From models presented in Chapter 2 it is clear that the dynamics of electromagnetic formations are not only nonlinear, they are coupled as well in the sense that if one of the dipoles in the formation is changed, every satellite with a non-zero dipole is affected. Moreover, in LEO Earth’s magnetic field has a strong influence over the attitude control. Keeping these points in mind, a general framework will be defined here which can serve as a guideline for designing any form of control for EMFF. In the design of control for EMFF, the following guidelines must be considered: • EMFF can control all the relative degrees of translational motion, i.e. the center of mass of the formation cannot be moved. Although for formation flying missions this is not a limitation, this must be considered explicitly in any control design. • The dynamics of EMFF have uncertainty. The dynamic models are based on a far-field model of the dipoles. These models are accurate only when the distance between the dipoles is greater than many coil diameters. In the near-field region, these models overestimate the force and torque exerted on the dipoles. Although, this is not in itself a limitation, since better models based on the exact Biot-Savart Law [17] can be built at the expense of computational cost. If it is undesirable to use exact models then this uncertainty in the dynamic models must be explicitly taken into account in any control formulation. 60 • The environment in which electromagnetic formations will operate may be uncertain. This is especially true in LEO due to the uncertainty present in the Earth’s magnetic field model (see Section 2.3). Since the disturbance torque due to Earth’s magnetic field is large, tackling the uncertainty through robustness of the control laws may be inadequate; in that case direct external measurement of the Earth’s magnetic field or online adaptation may be used. • The dynamics of electromagnetic formations are coupled and the magnetic force on each satellite is given by a set of polynomial equations, therefore to find the control inputs dynamic inversion through optimization has to be used as discussed in Section 4.5. • Due to dipole coupling, centralized translational control has to be used. Therefore, one satellite in the formation may act as the “leader” and solve the control problem for the whole formation and transmit the translational control commands to individual satellites in the formation. This may result in a single point-of-failure in the formation since if the “leader” satellite malfunctions then the whole formation may be rendered useless. But if the same computational capacity is built into multiple satellites then this “leadership” role can be handed over to the other satellites and there would be no single point-of-failure in the formation. • Each satellite is assumed to have its own momentum storage devices, such as reaction wheels or Control Moment Gyros (CMGs). Therefore, the attitude control can be implemented in a decentralized fashion and each satellite can compute its own attitude actuation commands. 61 • Angular Momentum Management (AMM) can be an issue with using EMFF especially in LEO. Therefore, any control formulation must take AMM explicitly into account (e.g. in the dipole equations solution) and verify the angular momentum storage requirements are met through simulations etc. 3.2. Translational Control for N-Satellite EM Formation Due to the coupled nature of the dynamics and uncertainty present in the dynamic model, a centralized adaptive position tracking control scheme will be presented here. Consider a general N-satellite electromagnetic formation and let the satellites be numbered according to the index set ℑ = {0,1,..., n} where n = N-1. Designating satellite 0 as the “leader” of the formation, the translational dynamics of the ith satellite in the formation, relative to the leader in the orbital frame FRO, are given by Eq. (2.74) and can be written in a compact vector form as follows: pi + ci (ω0 , pi ) + g i ( R0 , pi ) = aim + aid (3.1) where: p i = [ x0i y0 i z0i ]T = [ pix piy piz ]T is the position vector of the ith satellite in the orbital frame FRO, ci (ω0 , pi ) = [−2ω0 piy 2ω0 pix 0]T is the coriolis term, μe pix ⎡ ⎤ − ω02 pix 3 ⎢ ⎥ Ri ⎢ ⎥ ⎢ μe ( R0 + piy ) μe ⎥ g i ( R0 , pi ) = ⎢ − 2 − ω02 piy ⎥ is the gravity term, 3 Ri R0 ⎢ ⎥ ⎢ ⎥ μe piz ⎢ ⎥ 3 Ri ⎣ ⎦ 62 ⎡ fixm − f 0mx ⎤ ⎢ ⎥ aim = ⎢ fiym − f 0my ⎥ is the relative specific magnetic force on satellite-i in FRO and, ⎢ fizm − f 0mz ⎥ ⎣ ⎦ ⎡ f ixd − f 0dx ⎤ ⎢ ⎥ aid = ⎢ fiyd − f 0dy ⎥ is the relative specific disturbance force on satellite-i in FRO. ⎢ f izd − f 0dz ⎥ ⎣ ⎦ The relative specific magnetic force on satellite-i, aim , can be defined as a sum of the far-field approximation and a near-field modifier term as follows: ⎡ fˆixm − fˆ0mx ⎢ aim = aˆ im + ⎢ 0 ⎢ ⎢⎣ 0 ⎡ fˆixm − ⎢ where aˆ im = ⎢ fˆiym − ⎢ ˆm ⎢⎣ fiz − 0 fˆiym − f 0my 0 ⎤ ⎡γ ⎤ ⎥ ix 0 ⎥ ⎢⎢γ iy ⎥⎥ ⎥ fˆizm − fˆ0mz ⎥ ⎢⎣γ iz ⎥⎦ ⎦ 0 (3.2) fˆ0mx ⎤ ⎥ fˆ0my ⎥ is the far-field approximation of the relative specific magnetic ⎥ fˆ0mz ⎥ ⎦ force on satellite-i in orbital frame FRO and, γ i = [γ ix γ iy γ iz ]T is the unknown gain vector for relative magnetic force. Note that in this formulation of the relative specific magnetic force, aˆ im is what is known from the model, given by Eqs. (2.13) and (2.19), and γ i is the unknown multiplication factor that adjusts the forces to the actual level based on whether the satellite is in the near-field or far-field region. The parameters γ i represent the uncertainty present in the magnetic dipole strengths and are a function of the position of the satellites. The rate of change of γ i can be related to the rate of change of the satellite position using the chain rule as ( γ i )p = ( dγ i dp ) p . By comparing the farfield model force with the exact Biot-Savart law, the term dγ i dp can be estimated for 63 two dipoles in the near-field region. This comparison reveals that these parameters vary at least an order of magnitude slower than the rate at which the position of the satellites changes. Moreover, since the desired trajectory is assumed to be sufficiently slowly varying, the “slowly-varying” assumption for the parameters γ i is a good assumption for dipoles. In a similar fashion, treating the unknown relative disturbance forces as slowly varying parameters di = ⎡⎣ dix T diz ⎤⎦ , the relative translational equations for satellite- diy i can be written as: pi + ci (ω0 , pi ) + g i ( R0 , pi ) = aˆ im + Yi θi (3.3) Where: ⎡ fˆixm − fˆ0mx ⎢ Yi = ⎢ 0 ⎢ 0 ⎣⎢ θi = ⎡⎣γ ix 0 0 fˆiym − f 0my 0 0 fˆizm − fˆ0mz γ iy γ iz dix diy 1 0 0⎤ ⎥ 0 1 0 ⎥ and, ⎥ 0 0 1⎥ ⎦ T diz ⎤⎦ is the parameter vector for satellite-i. Note that in this formulation, other parameters such as mass etc., if unknown, can also be incorporated [31], [40]. By defining a relative position vector for the whole formation as p = [p1 p 2 ... p n ] , the relative dynamics of the whole formation can be written T compactly as: p + C(ω0 , p) + G ( R0 , p) = aˆ m + Yθ 64 (3.4) where vectors C etc. are obtained by stacking individual vectors ci etc. and Y is a block diagonal matrix of size 3n x 6n that has Yi on its diagonal. Consider a trajectory following problem in which each satellite is required to follow a predefined trajectory that is sufficiently slowly varying (i.e., time constant of the change in trajectory is much less than that of the system) and sufficiently smooth (i.e. pd (t ) ∈ C 2 ). Note that the desired trajectory vector p d (t ) = [p d 1 (t ) p d 2 (t ) p dn (t )]T defines trajectories for the satellites relative to the leader and does not include the trajectory for the leader itself, which is appropriate for EMFF since the center of mass of the formation cannot be moved using EMFF. In other words, p d (t ) defines all the relative translational degrees of freedom of the formation that can be controlled. Let p(t ) = p(t ) − p d (t ) , p(t ) = p(t ) − p d (t ) and, θ = θˆ − θ be the position error, velocity error and parameter error vectors, respectively, for the whole formation. Define a formation composite error vector as follows: s(t ) = p(t ) + Λp(t ) (3.5) where Λ > 0 is a diagonal gain matrix. The rate of change of the composite error, s(t ) , can be written as: s(t ) = p(t ) − p r (t ) (3.6) p r (t ) = p d (t ) + Λp d (t ) − Λp(t ) (3.7) where: Consider a Lyapunov function defined as follows [31]: 65 V (t ) = 12 s(t )T s(t ) + 12 θT Γ −1θ (3.8) where Γ > 0 is a diagonal gain matrix. The time derivative of the Lyapunov function is given as: V (t ) = s(t )T s(t ) + θT Γ −1θ (3.9) Using Eqs. (3.4) and (3.6), Eq. (3.9) can be written as: { } V (t ) = sT −C(ω0 , p) − G ( R0 , p) + aˆ m + Yθˆ − p r (t ) − sT Yθ + θT Γ −1θ (3.10) By choosing the control law with K p > 0 : aˆ m (t ) = C(ω0 , p) + G ( R0 , p) − Yθˆ + p r (t ) − K p s(t ) (3.11) and the adaptation law: θˆ (t ) = ΓYT s(t ) (3.12) the rate of change of the Lyapunov function, Eq. (3.10), reduces to: V (t ) = −sT (t )K p s(t ) (3.13) which is negative semi-definite and stability, in the sense of Lyapunov, of the whole formation follows from the Lyapunov theorem. Since, the Lyapunov function and underlying system are time-varying (due to the time dependent desired trajectory), LaSalle’s Invariance Principle [30] cannot be used to establish asymptotic stability. However, asymptotic stability can be established using Barbalat’s Lemma [31] as done in the following section. 66 3.2.1. Proof of asymptotic convergence using Barbalat’s Lemma To show that the formation composite error approaches zero asymptotically using the control law (3.11) and the adaptation law (3.12), Barbalat’s Lemma, which deals with the asymptotic convergence of functions, will be used and is defined as follows: Lemma 3.1: Barbalat’s Lemma If a differentiable function f(t) has a finite limit as t → ∞ , and if its time derivative is uniformly continuous, then f (t ) → 0 as t → ∞ . For proof see Reference [31]. Note that a function f(t) will converge to a limit as t → ∞ if it satisfies the following two conditions: 1. f (t ) is lower bounded 2. f (t ) is negative semi-definite The uniform continuity requirement on a function f(t) can be stated as a boundedness requirement on its first derivative, or in other words if the function f(t) is uniformly Lipschitz then its first derivative will be bounded. Note that a function f: → is defined as uniformly Lipschitz if there exists a constant L > 0 such that the following condition: f (t1 ) − f (t2 ) ≤ L t1 − t2 for all t1 and t2 in is satisfied. Using these observations, the following Lemma can be stated: Lemma 3.2: Lyapunov like Lemma for Time-Varying Systems If a scalar function V (t ) satisfies the following conditions: 1. (3.14) V (t ) ≥ Vmin , i.e. it is lower bounded, 67 2. V (t ) ≤ 0 , i.e. it is negative semi-definite, 3. V (t1 ) − V (t2 ) ≤ L t1 − t2 ∀t1 , t2 ∈ for some positive constant L. This condition is equivalent to the boundedness of V (t ) . then V (t ) → 0 as t → ∞ . From Eq. (3.8) it is clear that V (t ) is a positive definite function and hence it is lower bounded. The second condition of Lemma 3.2 is also satisfied as shown in Eq. (3.13). To see that the last condition of Lemma 3.2 is satisfied we have: V (t ) = −2sT (t )K p s(t ) (3.15) Since V (t ) ≤ 0 and V (t ) is a positive definite function hence Vmin ≤ V (t ) ≤ V (0) which implies that both s and θ are bounded. Moreover, Eqs. (3.6) and (3.7) and the fact that the desired trajectory vector p d (t ) is sufficiently smooth ( ∈ C 2 ) implies that s(t ) remains bounded for any real mechanical system. Given these facts, it can be concluded that V (t ) remains bounded and all the conditions of Lemma 4.2 are satisfied hence V (t ) → 0 as t → ∞ . From Eq. (3.13) this can only happen when s(t ) → 0 or in other words both p(t ) and p(t ) approach zero as t → ∞ . This completes the proof of asymptotic convergence of the formation trajectory to the desired trajectory. It should be noted that the above proof does not imply that the unknown parameter error θ also converges to zero but rather it only implies that it remains bounded. 68 3.3. Adaptive Attitude Control In this section an adaptive attitude tracking control law will be presented that can be derived in a fashion similar to what was done in the previous section for translational control. Each satellite in the formation is assumed to have three orthogonal reaction wheels, hence the attitude control can be implemented in a decentralized fashion as discussed earlier. In the attitude control as well, there are two uncertainties in the model, namely the actual magnetic torque that acts on the satellite due to the magnetic field of other satellites is uncertain and can vary as much as 10%, depending upon whether the satellite is in the near- or far-field region, and the second uncertainty lies with the Earth’s magnetic field as discussed in Section 2.3. To account for these model uncertainties, an adaptive control scheme is proposed with the control and adaptation laws respectively as: m e τ RW = ( H B + H RW ) × ω + τˆ + τˆ + Iωr − Yτ θˆ τ + Kτ sτ (3.16) θˆ τ = − Γτ YτT sτ (3.17) m e where τˆ and τˆ are the estimated torques on the satellite due to other satellite dipoles and the Earth’s magnetic field, respectively. These can be computed using Eqs. (2.33) and (2.40). Other symbols are defined as follows: Yτ defined as: ⎡τˆxm 0 0 ⎢ Yτ = ⎢ 0 τˆym 0 ⎢ 0 0 τˆzm ⎣ μ = ⎡⎣ μ x μy 0 −μz μz −μ y 0 μx μy ⎤ ⎥ − μ x ⎥ is the gain matrix for the parameters θˆ τ , 0 ⎥⎦ T μ z ⎤⎦ is the dipole control vector for the satellite, 69 θˆ τ = ⎡⎣γ τ x γτ y γτ z Bex Bey T Bez ⎤⎦ , Kτ = a positive definite diagonal gain matrix, sτ (t ) = ω(t ) + Λτ α (t ) is the composite attitude tracking error vector, ω = ω − ωd , α = α − αd , Λτ > 0 is a diagonal gain matrix, ω r = ω d − Λτ α + Λτ α d . By using a similar procedure as outlined in the previous section for the translational control, the attitude control law and the adaptation law can be shown to asymptotically follow a predefined, sufficiently smooth attitude trajectory specified by α d , ω d and ω d . In this formulation the attitude orientation vector α can be defined by using Euler angles, in which case the kinematic relationship given by Eq. (2.32) relates the attitude angles with the body axis angular velocity ω . But for large angle slews, to avoid singularities present in the Euler angle representation of the attitude, we can use quaternions, in which case the orientation vector α can be defined using quaternion rotation axis components, i.e., α = [q1 q2 q3 ]T . In the case of quaternions, error in the orientation (i.e., α ) needs to be described by two successive quaternion rotations since the error quaternion will be the current satellite attitude quaternion with respect to the commanded attitude quaternion [41]. Therefore, the difference operator on the quaternions used to generate the error vector can be shown to be [22]: 70 ⎡ −q1 α = q′ − q′d = ⎢⎢ − q2 ⎢⎣ − q3 where q′ = [ q1 prime q2 indicates the last q0 q3 − q3 q2 q0 −q1 three − q2 ⎤ q1 ⎥⎥ q d q0 ⎥⎦ components (3.18) of the quaternion (i.e., q3 ] ) and qd is the desired attitude quaternion that can be defined as T follows: ⎡ qd 1 ⎤ ⎢q ⎥ ⎡ cos(ξ / 2) ⎤ ⎢ qd = d 2 ⎥ = ⎢ ⎢ qd 3 ⎥ ⎣U sin(ξ / 2) ⎥⎦ ⎢ ⎥ ⎣ qd 4 ⎦ (3.19) where U is a unit vector about which the angle ξ defines a positive rotation. In the quaternion formulation, the kinematic relation given by Eq. (2.31) (by using the error quaternion in place of q) can be used to compute ωr as required in the control law given by Eq. (3.16). 3.4. Angular Momentum Management As discussed earlier, angular momentum buildup in each satellite in the formation can be an issue with EMFF. Since we have a “free-dipole” available, we can use it to solve the dipole equations in such a way as to minimize this buildup of angular momentum in each satellite as described in Section 4.5. But for near Earth operations, where a constant disturbance torque may act on each satellite due to the Earth’s magnetic field, the reaction wheels on each satellite can quickly become saturated even after adjusting the dipole solution for minimizing angular momentum buildup. In this section, two methods will be discussed for managing the angular momentum. The first method is applicable for 71 a two satellite formation only, while the second method is general and can be applied to arbitrarily sized formations. 3.4.1. AMM for two-Satellite Formation using Sinusoidal Excitation One way of managing the angular momentum for two satellites is the method first proposed in Reference [11]. In this method the dipoles on each satellite are excited by a fixed sinusoidal current source that has a frequency much higher than the orbital frequency of the formation. The desired force between the dipoles is adjusted by varying the phase difference of the sinusoids on the two dipoles. To illustrate the effect, consider the force between two sinusoidally excited dipoles in the rotated frame as given by (using Eq. (2.20)): Fr ⎡ 2 μ1x μ2 x − μ1 y μ2 y − μ1z μ2 z ⎤ 3μ0 sin(ωt ) sin(ωt + φ ) ⎢ ⎥ F12 (r12 , μ1 , μ2 ) = − μ1x μ2 y − μ1 y μ2 x ⎢ ⎥ 4π r124 ⎢⎣ ⎥⎦ − μ1x μ2 z − μ1z μ2 x (3.20) where ω is the excitation frequency and φ is the phase difference between the two dipoles. The average force on dipole-1, due to the magnetic field of dipole-2, can be computed by taking the integral of Eq. (3.20) over one time period (during which we assume that the individual dipole components remain constant): Fr where Fr ⎡ 2 μ1x μ2 x − μ1 y μ 2 y − μ1z μ 2 z ⎤ 3μ0 cos(φ )T ⎢ ⎥ F (r12 , μ1 , μ2 ) = − μ1x μ 2 y − μ1 y μ 2 x 4 ⎢ ⎥ 8π r12 ⎢⎣ ⎥⎦ − μ1x μ 2 z − μ1z μ 2 x A 12 (3.21) F12A is the average force on dipole-1 due to dipole-2 in the rotated frame and T is the time period of the sinusoidal excitation. The above equation clearly shows that by adjusting the phase difference between the dipoles, the magnitude of the force can be 72 changed as desired while the orientation can be adjusted by varying the individual components of the dipole (i.e. by adjusting the currents on individual coils). The advantage of using this scheme of exciting the dipoles is that the disturbance torque on each dipole due to the Earth’s magnetic field averages out as can be seen from Eq. (2.34): A T τ 1E = ∫ μ1 (t ) × BE ( R1 )dt = 0 0 (3.22) where it is assumed that the Earth’s magnetic field is constant over a time period of the dipole excitation which will be a good assumption if this time period is much smaller than the orbital period. The limitation of this method is that it is not clear how it can be applied to more than two-satellite formations. 3.4.2. AMM using Dipole Polarity Switching To manage angular momentum for general electromagnetic formations, the unique nonlinearity of magnetic dipoles can be utilized, namely the force acting on a dipole due to another dipole depends upon the product of the individual dipole values. Therefore, if both dipoles change their sign (i.e., flip by 180º) simultaneously and instantaneously, the force acting on the dipoles does not change. But the torque acting on the satellite due to Earth’s magnetic field changes sign, as can be seen from Eq. (2.40), resulting in a net cancellation of the effect of the Earth’s magnetic field on average. The angular momentum storage capacity required is approximately inversely proportional to the switching frequency. To see this, the Earth’s magnetic torque is related to the reaction wheel angular momentum as follows: E dH RW =τ E dt 73 (3.23) where: τ E = Magnetic torque on the satellite due to Earth’s magnetic field E H RW = Reaction Wheel angular momentum due to Earth’s magnetic field Using Eq. (2.34) and integrating Eq. (3.23) over half of the switching period T, the reaction wheel angular momentum accumulated over half the switching period is given as: E H RW =∫ T /2 0 μ (t ) × BE ( R1 )dt (3.24) For simplicity, assuming that the dipole strength and Earth’s B-field remain constant during the switching period, the RW momentum will be given by: { } T2 E = μ (t ) × BE ( R1 ) H RW (3.25) Since RW angular momentum is proportional to the size of the RW, we can write: RW Size ∝ 1 Switching Frequency (3.26) Other parameters that affect the RW size are formation orbit, formation geometry and nominal values of the dipoles required to hold the formation. Practically speaking this “switching” action will take finite time, depending upon the size of the coils etc., but still it can be accomplished in a relatively small time as compared to the time constants of the formation error rates. This can be realized by using capacitors and active switching techniques. The effectiveness of this technique in managing angular momentum is shown by the simulation results in the next section. 74 3.5. Simulation Results In order to verify the validity of the control laws and the angular momentum management method developed in the last sections, a full 6-DOF (Degree Of Freedom) nonlinear simulation was built using Simulink and Matlab. Using these simulation tools, general Nsatellite electromagnetic formations can be simulated around Earth in the ECI reference frame including J2 perturbations. A full 6-axis controller enables the control of general formations that allows for prescription of trajectories with respect to the leader of the formation (satellite 0). This simulation also includes a tilted-dipole model of the Earth’s magnetic field. The purpose of these simulation tools is to verify the control concepts developed in this chapter. For the testing of the EMFF controllers in a more realistic simulation environment, parallel work is underway to integrate these controllers into the NASA Goddard FFTB (Formation Flight Test Bed) [76]. See Appendix A for a more detailed discussion of the interfaces of these simulation tools. Using these simulation tools, simulation results will be presented to show the viability of using EMFF for LEO missions. 3.5.1. Two-Satellite Cross Track Formation In this section simulation results will be presented for a two-satellite formation in a circular polar orbit around Earth at an altitude of 500 km (see Figure 3.1). The two satellites are to be kept at a fixed distance from each other in cross-track position while one face of each satellite needs to point towards Earth at all times. 75 Figure 3.1: Two-satellite formation orbits. It should be noted that the orbits of the individual satellites are non-Keplerian and they need to be kept on their respective orbits by continuously applying the necessary force along the cross-track axis. Such a formation can be used in a SAR (Synthetic Aperture Radar) application, where the cross-track distance between the two satellites can act as the baseline of the interferometer and can yield information about ground elevation differences [5]. Different parameters used in the simulations are listed in Table 3.3-1. Moreover, a constant unknown external magnetic field component, having a strength equal to [1x10-5 -0.5x10-5 -2.0x10-5]T Wb/m2 was assumed in the simulation. Similarly a time varying relative disturbance force of 1mN was also used in the simulation. 76 Table 3.3-1: Parameter values used in the simulation Parameter Cross-track distance (m) Value 10 Parameter Value Kτ 100 Λτ 1 Leader Mean Motion ω0 (rad/s) Mass of each satellite (kg) 1.1068x10-3 250 Γ fm (gain for γ i 's ) 1 I (kg-m2, same for all axes) 20 Γ fd (gain for di’s) 0.1 Kp 0.5 Γτ m (gain for τ x 's ) 1e-3 Λ 0.02 Γτ d (gain for Be 's ) 1e-7 1× 10−3 sin(ω0 t ) Unknown Earth’s B x1.0x10-5 Relative Dist. force component (T) Fdx (N) -5 0.0 Unknown Earth’s B y-0.5x10 Relative Dist. force component (T) Fdy (N) Unknown Earth’s B z-2.0x10-5 Relative Dist. force Fdz 0.0 component (T) (N) In this simulation a switching time of 50 sec. was used for angular momentum management. Figure 3.2 gives the position error, attitude, control currents, and reaction wheel angular momentum of the follower satellite for one orbital period. Since the satellite needs to point towards Earth at all times, one angle (the2 in Figure 3.2) changes linearly for a circular orbit. Figure 3.3 gives the corresponding quaternion values for the follower satellite. Figure 3.3 also gives the algebraic difference between the actual and desired quaternions of the follower satellite (note that it is not the attitude error quaternion). From the graphs of the control currents of the follower satellite the switching action is evident, while from the graphs of the reaction wheel angular momentum it is clear that the angular momentum buildup was limited by the switching action. Otherwise angular momentum would buildup continuously saturating the reaction wheels quickly. 77 1 q2, 100*q2e q1, 100*q1e Figure 3.2: Follower satellite results. 0 -1 0 0.5 1 1.5 1 0 -1 0 0.5 1 0 -1 0 0.5 1 1.5 1 1.5 time (h) q4, 100*q4e q3, 100*q3e time (h) 1 1.5 1 0 -1 0 0.5 time (h) time (h) Figure 3.3: Follower satellite quaternions. 78 Figure 3.4 gives the values of different estimation parameters. The near-field adjustment parameters are not given since, for this simulation, the satellites are in the farfield region and these parameters are zero. As can be seen from these figures, the adaptation laws effectively vary the estimated values of the parameters in order to adjust for unknown external disturbance forces and torques. Figure 3.4: Different estimated parameters The results given above demonstrate the viability of the control algorithm and also the effectiveness of the dipole polarity switching control law as the angular momentum is managed efficiently. 3.6. Summary In this chapter a control framework has been presented, which can be used to design control laws for general EM formations for specific missions. Using this framework, 6- 79 DOF trajectory following adaptive control laws have been derived that are suitable for controlling general EM formations in LEO. These control laws specifically account for the uncertainty present in the dipole model and the Earth’s magnetic field model. The angular momentum management for a two-satellite formation using phase control was introduced. For general EM formations, the angular momentum management using dipole polarity switching was presented. Proof of concept of these control laws was presented using a fully nonlinear simulation for a circular polar orbit in LEO. This chapter presents practical algorithms, with low computational burden, that can be used to track trajectories for general EM formations in LEO. In Chapter 5, algorithms for generating optimal trajectories will be presented that can be tracked in real-time by using the control laws presented in this chapter. 80 Chapter 4 APFM and Stability Analysis In this chapter the Artificial Potential Function Method (APFM) will be used for generating collision-free trajectories for general EM formations. This method has a low computational burden as compared to optimal trajectory generation algorithms. Although it was asserted in Chapter 1 that a fully actuated EM formation can control all the relative degrees of freedom, it is important to present a practical algorithm that can be used to reconfigure an EM formation from a given initial state to a given terminal state. By combining APFM with Lyapunov theory, an algorithm is presented in this chapter that can be used to reconfigure general EM formations asymptotically while avoiding collisions. At the end of the chapter methods of solving the dipole equations will also be presented. 4.1. Artificial Potential Function Method for Vehicle Guidance and Control The Artificial Potential Function Method (APFM) is an algorithm that allows the guidance and control of autonomous vehicles with very little computational burden and hence is suitable for real-time control of complex systems such as EMFF. This method is most popular for the terrestrial robotic trajectory planning and is based on the design of a potential function with a global minimum at the desired configuration of the system and 81 maxima at the location of obstacles [33], [34]. This potential function is used to formulate a Control Lyapunov Function to generate a feedback control law that can reconfigure the system from a given initial state to a desired terminal state while avoiding collisions. The usefulness of this method stems from the fact that it combines the functions of guidance and control, with a low computational burden, and generates a feedback control law with robustness guarantees. This method will be developed in this section for a 2D, twovehicle electromagnetic formation for the purpose of illustration and application to EMFF. 4.1.1. An Illustrative Example Consider a two-vehicle electromagnetic formation on a flat floor and let one of the vehicles be labelled 0 while the second one is labeled 1. The relative translational dynamics of vehicle 1 with respect to vehicle 0, in the global inertial frame, are given as (using Eq. (2.55)): mrx1 = 2 Fx1 mry1 = 2 Fy1 (4.1) where: rx1 = x1 − x0 is the relative x-position of vehicle 1 w.r.t. vehicle 0 ry1 = y1 − y0 is the relative y-position of vehicle 1 w.r.t. vehicle 0 F1m = ⎡⎣ Fx1 T Fy1 ⎤⎦ is the magnetic force acting on vehicle 1 m = mass of vehicles 0 and 1 (assumed identical). In writing Eq. (4.1) the following fact is used: F0m + F1m = 0 82 (4.2) since linear momentum of the formation is not changed. Note that in this formulation the translational dynamics of vehicle 0 are completely dependent on those of vehicle 1, i.e. vehicle 0 moves accordingly such that the center of mass of the system remains fixed in the absence of external perturbations. Consider a reconfiguration problem in which the formation needs to be moved from a given initial state to a known terminal state. It is also desirable that there be no collision between the vehicles. To achieve these objectives using APFM, a potential function is defined as follows: φ (t ) = 12 r1T Mr1 + O(r1 ) (4.3) where: r1 = relative position vector of vehicle 1 = [rx1 T ry1 ] , r1 = r1 − r0 is the position error for vehicle 1, r0 = desired terminal location (a constant), M = a constant symmetric positive definite scaling matrix, O(r1 ) is an obstruction function that is defined such that it has a large value in the avoidance region around the obstruction and is zero outside. The obstruction function can be constructed in many ways, e.g. as an exponential and a simple distance function: ( O(r1 ) = λ1 exp −λ2r1T Nr1 O(r1 ) = c r1 −1 ) (4.4) where λ1 , λ2 and c are positive shaping constants for the obstruction function and N is a symmetric positive-definite shaping matrix. The obstruction function is added to prevent any collision between the two vehicles by creating a “repulsive force” whenever the two 83 vehicles come near each other. A typical potential function, using an exponential, is shown in Figure 4.1. Figure 4.1: A potential function shape for vehicle 1. The obstruction function is at the location of the vehicle 0. The potential function defined in Eq. (4.3) is used to construct a Lyapunov Function [31] as follows: V (r1 , r1 ) = 12 r1T Pr1 + φ (r1 ) (4.5) The time derivative of Eq. (4.5) defines the rate of descent at a given point in the statespace and is given as: V (r1 , r1 ) = r1T Pr1 + r1T Mr1 + ∇O (r1 )r1 (4.6) If we choose the acceleration r1 (with K > 0 ) as: r1 = − P −1 ( K (r1 , r1 )r1 + Mr1 + ∇OT ) then Eq. (4.6) becomes: 84 (4.7) V (r1 , r1 ) = −r1T K (r1 , r1 )r1 ≤ 0 (4.8) which is negative semi-definite and, according to the Lyapunov Theorem [30], the system is stable. To prove asymptotic stability, LaSalle’s Theorem or Invariance Principle [30][31] has to be used (see Section 4.3 for detail). By combining Eq. (4.7) with the dynamics given by Eq. (4.1), the following control law can be obtained: F1m (r1 , μ 0 , μ1 ) = − 12 mP −1 ( K (r1 , r1 )r1 + Mr1 − ∇V T ) (4.9) This control law is a set of two coupled nonlinear polynomial equations in the unknown control inputs μ 0 = ⎡⎣ μ0 x T μ0 y ⎤⎦ and μ1 = ⎡⎣ μ1x T μ1 y ⎤⎦ . For ways of solving this equation see Section 4.5 later in this chapter. The simulation results for a two-vehicle formation using this method are shown in Figure 4.2. In this simulation masses for both the vehicles were assumed to be 30 kg and the control current was saturated at 100 A. Each vehicle was assumed to have two orthogonal coils with nA = 100 A-turns. The controller gains used were assumed to be diagonal and a value of 1 for K and 0.01 for M were used. Figure 4.2 gives the time histories of the state and control variables for both the vehicles in the formation with label-0 for vehicle-0 and label-1 for vehicle-1. Figure 4.3 shows the values of the potential function along the trajectory of vehicle-1 and clearly shows the descending nature of the potential function (phi) as the vehicle reaches its desired position. 85 Figure 4.2: Reconfiguration results for a two-vehicle formation using APFM. Figure 4.3: Values of the potential function along the trajectory of vehicle-1. 86 4.1.2. Feedback Motion Planning using APFM and its Limitations From the above illustrative example it is clear that the APFM generates a complete solution to the motion planning problem. In this section some fundamental issues related to the motion planning using APFM will be discussed. Generally the motion planning algorithm can be divided into three distinct sections as shown in Figure 4.4 [35]. Given the geometry of the satellite formation, obstacles, initial state, and terminal state a collision free geometric curve is found in the “path-planning” part of the algorithm that completely ignores the dynamics of the formation. Secondly, given this collision free path, a reference trajectory is determined for the formation that is based on the time parameterization of the collision free path. This reference trajectory is such that the “dynamics” of the formation can actually execute it using trajectory following algorithms, which is the last piece of this algorithm. Path Planner Trajectory Generator Trajectory Follower Figure 4.4: The decomposition of the motion planning problem. The feedback motion planning algorithm, on the other hand, combines all these functions and generates a feedback plan which produces control inputs for the satellites in the formation for each state in the state space such that the formation reaches its desired or goal states. The Artificial Potential Function Method (APFM) generates the feedback plan by defining a potential function that has simultaneously the properties of a navigation function [36] and a Lyapunov Function. The gradient of such a function defines a vector field that defines the descent directions towards the global minimum as given by Eqs. (4.6) and (4.7). Since we have maxima defined at the locations of 87 obstacles, the vehicles or satellites avoid these obstacles automatically as they move along these descent directions. This formulation has at least three limitations. One well documented limitation is the existence of local minima in the potential function. For example the very simple potential function defined in Eq. (4.3) has a gradient given by: ∇φ = Mr1 + ∇O(r1 ) (4.10) Extrema exist for the potential function at the stationary points where the gradient is zero or in other words at the points in state space where the following equation is satisfied: Mr1 = Mr0 − ∇O(r1 ) (4.11) One obvious solution of the above equation is the global minimum r0 but unfortunately, there is a thin set in state space where the descent gradient Mr1 due to position error may equal the obstruction function repulsion gradient or ∇O(r1 ) . This thin set forms a set of saddle points in the state space where there is a possibility that the satellite will get stuck. To visualize this set in 2D, for a two-satellite formation, see Figure 4.5. Global minimum Contour of obstruction function Location of sat. 2 gmt Gradient of descent term Gradient of obstruction function Location of sat. 1 Figure 4.5: Case when the gradient of potential function can be zero. 88 It is clear that the gradient of the potential function can be zero only for the case when the global minimum and the obstruction function are aligned with the descent gradient vector of the satellite. One way to get around the local minima is to add an obstruction maneuvering term or circulation to the potential function gradient whenever the satellite is approaching such a minima. The local minimum will be approached by the satellite whenever the gradient of the potential function approaches zero: Mr1 + ∇O(r1 ) 2 ≤ ε (4.12) where ε is a small positive number and . 2 represents the 2-norm. Whenever the condition given by Eq. (4.12) is satisfied, an obstruction maneuvering term can be added to the potential function gradient to maneuver around the obstruction. This term is added such that it is orthogonal to the current velocity vector of the satellite (which would be parallel to the descent direction given by ∇φ (r1 ) unless an obstruction is present): g mt ir1 = 0 (4.13) where g mt is the maneuvering term. This method was used in the illustrative example given above. The example was constructed such that the satellites would get stuck at the local minimum as can be seen from Figure 4.2 (since they approach each other head on). One way of preventing local minima in the potential function is to construct the potential function in such a way that it has only one unique global minimum. See Reference [35] for one such method. Another method is to generate the potential function as a harmonic function which is the solution of Laplace’s equation [37]. It should be noted that all these methods require a-priori computation of the potential function over 89 the geometry of the problem which may become computationally expensive for complex problems. The second limitation of APFM is that it can result in the saturation of the actuators. Limited control authority implies that the desired acceleration at each point in the state-space must remain less than or equal to what the system can actually achieve. This can be ensured by appropriately shaping the potential function in the regions where the acceleration requirements might be higher due to larger position errors. However, doing that for a nonlinear actuation system such as EMFF is difficult and, for simplicity in the above example, a simple saturation was used, which with sufficient damping, gives reasonable results in the simulations. The third and most important of the limitations of the APFM method is that it generates non-optimal trajectories. For space missions, the optimality of the trajectories is very important since non-optimality directly translates into penalties to the mass metric for the propulsion system. Specifically for EMFF, since the cost of using control is zero for a designed system, the trajectories for EMFF are time optimal trajectories. Using APFM results in trajectories which are sub-optimal hence, for EMFF this method is not suitable from a system design point of view (see Section 6.4 for a comparison of APFM with the optimal trajectory results). Nevertheless, from the point of view of the computational complexity, APFM is much more efficient as compared to optimal trajectory generation and implementation. Moreover, APFM can generate feasible trajectories that can be optimized by nonlinear optimization techniques as discussed in Chapter 5. Thus feasible trajectories, for quite complex formation maneuvers, can be generated by APFM and used as initial starting 90 guesses for the nonlinear optimizer. Using the potential function shaping method, as discussed in Section 4.4, trajectories with reasonable convergence times can be generated with very low computational burden. 4.2. Stability Analysis of EM Formations In this section, a brief stability analysis of EM formations will be presented for the purpose of showing that linear stability analysis is inadequate for general EM formations. In the next section, nonlinear tools based on Lyapunov theory and APFM will be used to generate an algorithm that can be used to reconfigure a general EM formation. 4.2.1. Limitations of Linear Analysis of EMFF As discussed in Chapter 1, previous work using linearization techniques has established stability results for two-satellite formations [9], [28]. Nevertheless, linearization techniques are inadequate to establish stability results for arbitrary formations. This can be seen from an inspection of Eqs. (2.64), which shows that the control inputs (i.e. μ 's ) enter the dynamics as product pairs. Hence during linearization, unless these control inputs have some nominal values, the corresponding entry of the resulting B-matrix would be zero, which can make the linearized dynamics uncontrollable. To see that this is indeed the case, consider a two-satellite formation in 2D (the case of the EMFF testbed [29]). For simplicity, assume that one of the vehicles is fixed as shown in Figure 4.6. 91 y α B A x Fixed sat. at (0,0) Moving sat. at (x0,y0) nominally Figure 4.6: Coordinate axes for testbed dynamics. The translational dynamics of the moving vehicle are given as: ⎡ Fabx ⎤ ⎢ ⎥ ⎡ xa ⎤ ⎢ ma ⎥ ⎢ ⎥= ⎣ ya ⎦ ⎢ Faby ⎥ ⎢ ⎥ ⎣ ma ⎦ (4.14) where ma is the mass of the moving satellite. Using Eqs. (2.64), the above equations can be expanded as follows: ⎡ xa ⎤ 3μ0 ⎢y ⎥ = 7 ⎣ a ⎦ 4π ma ( xa2 + ya2 ) 2 where μa = ⎡⎣ μax ⎡ − μbx ( (2 xa3 − 3xa ya2 ) μax + (4 xa2 ya − ya3 ) μay ) ⎤ ⎢ ⎥ ⎢ μbx ( (−4 xa2 ya + ya3 ) μax + ( xa3 − 4 xa ya2 ) μay ) ⎥ ⎣ ⎦ (4.15) T μay ⎤⎦ is the dipole vector (control input) for the moving satellite while μb = [ μbx 0] is the dipole vector for the fixed satellite (for simplicity it is assumed that T the fixed satellite has only one coil activated with a fixed current). It is also assumed for simplicity that the angle of the satellites is fixed at zero. Linearizing Eqs. (4.15) about the nominal point, one can obtain: 92 ⎡ xa ⎤ ⎡ 0 ⎢ x ⎥ ⎢0 ⎢ a⎥ =⎢ ⎢ ya ⎥ ⎢ 0 ⎢ ⎥ ⎢ ⎣ ya ⎦ ⎣ 0 1 0 0 0 0 0 0 0 0 ⎡ ⎢ 2 2 0 ⎤ ⎡ xa ⎤ ⎢ x0 (−2 x0 + 3 y0 ) 0 ⎥⎥ ⎢⎢ xa ⎥⎥ 3μ0 μbx0 ⎢ ( x02 + y02 )7 / 2 + ⎢ 1 ⎥ ⎢ ya ⎥ 4π ma ⎢ 0 ⎥⎢ ⎥ ⎢ y (−4 x 2 + y 2 ) 0 ⎦ ⎣ ya ⎦ ⎢ 0 2 0 2 7 / 20 ⎢⎣ ( x0 + y0 ) ⎤ ⎥ y0 (−4 x + y ) ⎥ ⎥ ⎡ Δμax ⎤ ( x02 + y ) ⎥⎢ ⎥ 0 ⎥ ⎣ Δμay ⎦ x0 ( x02 − 4 y02 ) ⎥ ⎥ ( x02 + y02 )7 / 2 ⎥⎦ 0 2 0 2 0 2 7/2 0 (4.16) where μbx 0 is the nominal value of the dipole on the fixed vehicle, while the nominal value of the dipole on the moving vehicle is assumed to be zero. Clearly, if μbx 0 is zero then the B-matrix in Eqs. (4.16) would become zero making the system uncontrollable. Although controllability of the system can be proven for non-zero μbx 0 , there are situations in which a constant nominal value of the dipole is undesirable. For example in LEO, a constant value of dipole may result in a constant disturbance torque acting on the satellite due to the Earth’s magnetic field (see Chapter 2 Section 2.3), which is highly undesirable. Therefore, in such situations we need control schemes that do not require a constant nominal value of the dipole. Although, from linear stability analysis the system appears to be uncontrollable for zero nominal values of the dipole, it is not the case as revealed by the full nonlinear analysis in the following sections. As highlighted by the above example, the linear stability analysis tools are insufficient for EMFF. Some formation configurations, such as TPF (Terrestrial Planet Finder), would need a constant nominal value of controls to keep the array in a spinning formation and linear tools can be used. Nevertheless, in general that may not be the case, for example with the rest-to-rest reconfiguration of a formation in LEO. Therefore, to establish results for general formations, nonlinear stability analysis tools need to be used. 93 4.3. Reconfiguration of EM Formations using APFM The purpose of this section is to present an algorithm for the reconfiguration of a fullyactuated EM formation. In the reconfiguration problem, the formation needs to be reconfigured from a known initial state to a known terminal state with the following assumptions: 1. Well-posedness, 2. Full actuation, 3. Convex satellite shapes, 4. Perfect knowledge of full state and dynamics. Well-posedness assumption is required since EM actuation cannot change the total linear momentum of the formation. Therefore, any formation reconfiguration problem that requires a net change in the formation linear momentum does not belong to well-posed problems for EMFF. This assumption also excludes formations that require satellites on top of each other and other such scenarios in both the initial and terminal conditions. Full actuation means that, in 3 , each satellite has three orthogonal coils and three orthogonal reaction wheels, therefore enabling the control of all the relative degrees of freedom. Convex shape for the satellites is required since the obstruction functions used in the algorithm are elliposiodal. Although, the satellite itself can be of any shape, the reconfiguration problem assumes that the collision avoidance region is an ellipsoid centered at each satellite in the formation. Lastly perfect knowledge of state and dynamics is assumed, nevertheless the algorithm is based on Lyapunov function which is inherently robust and the method will work for small uncertainties. 94 Let the satellites in the formation be numbered from 0 to N-1. We can write the translational dynamics of the N-satellite EM formation, with respect to the formation center of mass, in an inertial frame as follows (see Eqs. (2.24)): pi = vi v i = fi (p, v i , μ) where fi : 3N × 3 × 3N → 3N (4.17) i=0…N-1 represents the nonlinear dynamics of the ith satellite in the formation, pi is the position vector of satellite-i, v i is the velocity vector of satellitei, p is the position vector of the whole formation and μ is the control vector of the whole formation. Define a scalar potential function for satellite-i with a unique global minimum (at the desired final configuration) as follows: φi (p) = 12 pi T M i pi + 12 N −1 ∑ ( λ exp{−λ (p j = 0, j ≠ i 1 2 i ) - p j )T N(p i - p j )} (4.18) where: pi = pi − pi 0 is the position error for the ith satellite pi 0 = desired terminal location Mi = a constant symmetric positive definite scaling matrix, λ1 , λ2 = positive scaling constants for the obstruction function N = a constant symmetric positive definite matrix for the obstruction function Such a potential function for a four-satellite formation (in 2D) is shown in Figure 4.7. 95 Figure 4.7: A potential function for one satellite in a 4-satellite formation. Using these N potential functions (one for each satellite in the formation), the formation Lyapunov Function can be written as follows: N −1 ⎡ V ( v, p) = ∑ ⎢ 12 v i T Pi v i + 12 p i T M i p i + 12 i =1 ⎣ N −1 ∑ ( λ exp{−λ (p 1 2 i j = 0, j ≠ i ) ⎤ - p j )T N (p i - p j )} ⎥ ⎦ (4.19) where the Pi’s are symmetric, positive-definite scaling matrices. Note that the Lyapunov function does not include a potential function, of the form given by Eq. (4.18), for satellite-0. This is appropriate for EMFF since total linear momentum of the formation cannot be changed using EM actuation as discussed earlier. The time derivative of Eq. (4.19) can be written as: N −1 ⎡ N −1 ⎤ V ( v, p) = ∑ ⎢ v i T Pi v i + p i T M i v i + ∑ ∇Oij (pi , p j ) ( v i − v j ) ⎥ i =1 ⎣ j = 0, j ≠ i ⎦ (4.20) where: { } ∇Oij (pi , p j ) = −λ1λ2 exp −λ2 (pi - p j )T N(pi - p j ) (pi - p j )T N 96 i≠ j (4.21) is the gradient of the obstruction function of satellite-i due to satellite-j (note that in the above equation the gradient is defined as a row vector). From Eq. (4.21) it is clear that the gradient of the obstruction function is a skew-symmetric function, i.e.: ∇Oij (pi , p j ) = −∇O ji (p j , pi ) i≠ j (4.22) Using the above relationship, Eq. (4.20) can be written as: N −1 ⎡ N −1 ⎤ V ( v, p) = ∑ ⎢ v i T Pi v i + p i T M i v i + 2 ∑ ∇Oij v i − ∇Oi 0 ( v i + v 0 ) ⎥ i =1 ⎣ j = 0, j ≠ i ⎦ (4.23) As discussed in Section 4.1.2, the potential function defined by Eq. (4.18) can possibly have a thin set in the state-space where the satellites can get “stuck” in the local minima. Define a set Ti for each satellite (except satellite-0) comprising of the neighborhoods of all such local minima as follows: ⎧ ⎫ N −1 mi ⎪ ⎪ T T Ti = ⎨ Bε (pi ) M i p i + 2∑ ∇Oij − ∇Oi 0 + κ = 0, pi ≠ p i 0 ⎬ m0 j =0 ⎪ ⎪ j ≠i ⎩ ⎭ ( ) where Bε (pi ) defines a sphere of radius 0 < ε 1 centered at p i , κ ∈ (4.24) 3 is defined below, and mi is mass of the ith satellite. In order to avoid the local minima, a hybrid switching * control law for each satellite (except satellite-0) is defined as follows: ⎧ ⎫ N −1 mi ⎪ ⎪ T T v i = −Pi ⎨K i (pi , v i ) v i + M i pi + 2∑ ( ∇Oij ) − ∇Oi 0 + κ ⎬ if pi ∉ Ti m0 ⎪ j =0 ⎪ j ≠i ⎩ ⎭ (4.25) ⎧ ⎫ N −1 mi ⎪ ⎪ T T v i = −Pi ⎨K i (pi , v i ) v i + M i pi + 2∑ ( ∇Oij ) − ∇Oi 0 + κ + γ i g imt ⎬ if pi ∈ Ti m0 j =0 ⎪ ⎪ j ≠i ⎩ ⎭ (4.26) −1 −1 * See References [79] and [80] for an introduction to hybrid and switched system stability theory. 97 where Ki is a positive-definite control gain scaling matrix that may be dependent on the current state to tailor the descent rate according to the position and velocity of the satellite, γ i is a positive scaling constant, and g imt ∈ 3 is a unit vector orthogonal to the velocity of satellite-i: g imt i v i = 0, g imt = 1 (4.27) The switching control law is defined such that if the satellite-i is not in the neighborhood of the local minima, i.e. not in the set Ti , then control is computed according to Eq. (4.25), and if the satellite-i is in the set Ti then Eq. (4.26) is used. Note that if velocity of satellite-i is zero then the term g imt is not well-defined. This is the reason that the formations with their initial or terminal conditions at or near to the local minima of the potential function are not considered as well-posed for this algorithm. With this selection of the accelerations, the time derivative of the Lyapunov function can be written as: N −1 N −1 1 V ( v, p) = −∑ v K i v i − ∑ ∇Oi 0 v 0 − m0 i =1 i =1 N −1 T i N −1 V ( v, p) = −∑ v iT K i v i − ∑ ∇Oi 0 v 0 − i =1 i =1 1 m0 N −1 ∑m v κ i =1 if pi ∉ Ti , i = 1...N − 1 T i i N −1 ∑ m v κ + ∑γ i =1 i T i k∈I k v Tk g kmt ∀ p k ∈ Tk (4.28) (4.29) where the index set I is defined such that it contains the indices of all the satellites for which the control law given by Eq. (4.26) is used. By construction, the obstruction maneuvering term g imt is always orthogonal to the velocity of satellite v i , therefore the last term in Eq. (4.29) is zero. Thus, in both the cases, the time derivative of the Lyapunov function becomes: N −1 N −1 V ( v, p) = −∑ v iT K i v i − ∑ ∇Oi 0 v 0 − i =1 i =1 98 1 m0 N −1 ∑m v κ i =1 i T i (4.30) Since the linear momentum of the EM formation is conserved in the absence of external perturbations, we have: N −1 ∑m v i =1 i i = − m0 v 0 (4.31) Using this relation, Eq. (4.30) can be written as: N −1 N −1 i =1 i =1 V ( v, p) = −∑ v iT K i v i − ∑ ∇Oi 0 v 0 − vT0 κ (4.32) In order to make the Lyapunov function negative semi-definite, the parameter κ is chosen according to the following relation: N −1 κ = −∑ ∇OiT0 (4.33) i =1 With this choice of κ , the time rate of change of the formation Lyapunov function becomes: N V ( v, p) = −∑ v iT K i v i ≤ 0 (4.34) i =1 Note that if the controlled system were not a switched system then Lyapunov stability would follow from the negative semi-definiteness of Eq. (4.34). However, since the controlled system is switched, Lyapunov stability does not follow from the negative semi-definiteness of the individual Lyapunov functions (see Example 2.1 in [79]). To prove stability for switched systems, an additional condition is required such that each individual Lyapunov function is strictly monotonically non-increasing on the sequences of all the switching times (see Theorem 2.3 in [79]). For the case of EMFF, the same Lyapunov function is used for both instances of the switched controlled system, i.e. with and without the obstruction maneuvering term. Equation (4.34) shows that this Lyapunov function is negative semi-definite for all times and in particular at any switching times that could occur. Therefore, the switched control system is stable in the sense of 99 Lyapunov. To show asymptotic stability for well-posed formations, the Invariance Principle or LaSalle’s Theorem [30], [31], with additional conditions for asymptotic stability of switched dynamical systems [81]-[82], will be used. The basic argument in LaSalle’s theorem is that if the global minimum is asymptotically stable then the formation cannot get “stuck” at any configuration other than the global minimum due to the inherent dynamics and control law formulation. Let x = [p v]T ∈ 6N be a point in the state-space X = {∀x ∈ 6N } . Then by construction the Lyapunov function given by Eq. (4.19) is positive-definite in X. Define the set: S = {x ∈ X | V ( v, p) = 0} (4.35) as the set of points where the time derivative of the Lyapunov function is zero. According to LaSalle’s theorem, assuming that there are no accumulation points of switching times, all solutions in the state-space converge to the largest invariant set in the set of points where the time derivative of the Lyapunov function is zero, i.e. set S as defined above. To determine the largest invariant set in S, it can be seen from Eq. (4.34) that: V ( v, p ) = 0 ⇒ v i (t ) = 0 ⇒ v i (t ) = 0 ∀i (4.36) From the switched feedback control law, given by Eqs. (4.25) and (4.26), zero velocity for all times implies that: N −1 ( ) M i pi + 2∑ ∇OijT − ∇OiT0 + j =0 j ≠i N −1 ( ) M i pi + 2∑ ∇OijT − ∇OiT0 + j =0 j ≠i mi κ=0 m0 if pi ∉ Ti mi κ + γ i g imt = 0 m0 if pi ∈ Ti (4.37) (4.38) By construction, Eq. (4.37) is never satisfied except when pi = 0 (which is the desired equilibrium condition) otherwise if it is true for pi ≠ 0 then pi ∈ Ti ⊂ X which is a 100 contradiction. In the neighborhood around the local minima, i.e. set Ti , Eq. (4.38) is applicable and no value of pi ∈ Ti ⊂ X can satisfy this equation due to the obstruction maneuvering term γ i g imt which is added for this specific purpose. Thus, it can be seen that the velocity of all the satellites cannot be zero simultaneously and in particular, in the set Tk the velocity of the kth satellite would be nonzero, forcing the Lyapunov function to be strictly negative-definite and consequently decreasing from one switching time to the next. In summary due to the combination of the two facts namely, 1. pi = 0 is the only zero velocity solution of Eq. (4.37), 2. Lyapunov function is strictly decreasing in between any possible switching times (see Theorem 2 in [81]), the largest invariant set in the set S (Eq. (4.35)) is: E = {p 0 } (4.39) hence the formation converges to this set asymptotically for almost all initial conditions. In the above algorithm, it was assumed that the acceleration given by Eqs. (4.25) and (4.26) can actually be realized by the EM actuation system. These equations are a set of 3N-3 nonlinear polynomial equations in an unknown dipole strength vector μ . The methods of solving this set of equations are discussed later in this chapter where it is shown that these can be solved efficiently in real-time. Moreover, the electromagnetic dipoles produce the desired acceleration by changing the currents in the coils. Since the current in the superconductors is limited by the critical current density * resulting in dipole saturation that has been neglected in the above proof. Nevertheless, theoretically * In a superconductor, if the current is increased beyond the critical current density then the property of superconduction is lost. 101 speaking, the potential function of the formation can always be adjusted such that the descent rate is sufficiently slow, resulting in small acceleration demand which can be met by the dipoles without saturation. Hence asymptotic convergence of the formation can always be achieved without saturation of the dipoles, at least in deep space where the dipoles do not have to fight the gravitational terms. In LEO it is assumed that the dipoles are designed such that they can provide sufficient acceleration required for the reconfiguration and to cancel any gravitational disturbance terms. Therefore, the saturation of the dipoles does not affect the stabilizability of the formation. Although from a system design point of view, as discussed in Section 4.1.2, using APFM for formation reconfiguration may not be practical, due to optimality considerations. Instead optimal trajectories (see Chapter 5) or potential function shaping technique (Section 4.4) can be used to improve convergence times. 4.3.1. Simulation Results In order to test the algorithm developed in the last section for the reconfiguration of general EM formations using APFM, a nonlinear simulation was built to simulate EM formations in 2D. In all the results presented in this section, each satellite is assumed to have same mass of 30 kg and each coil is assumed to have a value of 100 turns-m2. First simulation result is presented for a five-satellite formation in which some of the satellites are already present at their final positions. Despite this fact, as Figure 4.8 shows, they move aside to give way to other satellites in such a way that the formation achieves its desired configuration. Figure 4.9 shows the Lyapunov function values as a function of time for the formation and shows that although the Lyapunov function for an 102 individual satellite may increase during the maneuver, the total formation Lyapunov function monotonically decreases for all times. 3 Sat. 3 * = start 2 y (m) 1 Sat. 0 Sat. 1 0 Sat. 2 -1 -2 Sat. 4 -3 -4 -3 -2 -1 0 x (m) 1 2 3 4 Figure 4.8: Trajectories for the five-satellite formation reconfiguration. Lyapunov Function 0.06 sat 1 sat 2 sat 3 sat 4 total 0.05 V(t) 0.04 0.03 0.02 0.01 0 0 50 100 150 200 250 time (sec) 300 350 400 Figure 4.9: Lyapunov functions for the five-satellite formation. 103 450 The second simulation result is presented for a four-satellite square formation with terminal conditions as mirror image of the initial conditions. The trajectories for the formation are shown in Figure 4.10, which shows that the satellites initially descend down the potential function and are repelled due to the obstruction functions and as a result approach the neighborhoods of the local minima. Due to the presence of obstruction maneuvering term in the controller, a circulation starts as an “emergent behavior” and formation reconfigures itself while avoiding the local minima. The Lyapunov function of the formation is given in Figure 4.11 and again shows that the total formation Lyapunov function is monotonically decreasing for all times. 2 1.5 Sat. 0 traj. Sat. 0 start 1 Sat. 1 start y (m) 0.5 Sat. 1 traj. 0 Sat. 3 start -0.5 -1 Sat. 2 start -1.5 -2 -2.5 -2 -1.5 -1 -0.5 0 x (m) 0.5 1 1.5 2 2.5 Figure 4.10: Trajectories for the four-satellite square formation reconfiguration. 104 Lyapunov Function 0.2 sat 1 sat 2 sat 3 total V(t) 0.15 0.1 0.05 0 0 50 100 150 time (sec) 200 250 300 Figure 4.11: Lyapunov function for the four-satellite square formation. Lastly the simulation results for a random ten-satellite formation are presented. The initial and terminal conditions for the formation were initialized using a uniformly distributed random number generator in such a way that the distance between any points in the initial and terminal conditions was greater than three times the coil diameter. These initial and terminal conditions were adjusted such that the formation center of mass remained at the origin. Using the control law given by Eqs. (4.25) and (4.26), the resulting trajectories are shown in Figure 4.12. In this simulation, each satellite was assumed to have a mass of 30 kg, nA = 100 turns-m2, a coil current saturation at 100 Amps, all diagonal entries of the K matrices = 1.5 while all non-diagonal entries = 0, all diagonal entries of the M matrices = 0.01 while all non-diagonal entries = 0, and maneuver time was 750 sec. The obstruction functions were constructed identically for all the satellites with a unity diagonal N matrix, λ1 = 10 and λ2 = 1 . The dipole equations were solved using the algorithm discussed in Section 4.5.2. 105 * = Initial points, circles = Terminal points 4 2 y (m) 0 -2 -4 -6 -8 -8 -6 -4 -2 0 2 x (m) 4 6 8 Figure 4.12: Collision-free trajectories for a 2D, ten-satellite random formation. 4.3.2. Computational Complexity of the Algorithm In order to get an estimate of the computational complexity of the algorithm, a number of random formations were simulated for different numbers of satellites in the formation. The average simulation convergence time required to complete the maneuver is plotted against the number of satellites in the formation as shown in Figure 4.13. This figure also shows the average value of the time required for executing the simulation and shows that the computational complexity increases almost linearly with increasing number of satellites in the formation, at least for small N where N is the number of satellites in the formation. These results were generated in Matlab on a 3.0 GHz desktop computer. Also, 106 the Matlab fmincon function was used to solve the dipole equations optimization problem (discussed in Section 4.5). These results clearly highlight the fact that the given algorithm can be used to generate feasible collision-free trajectories for quite complex electromagnetic formations in real-time. Simulation convergence times average (over 25 runs) 1000 800 sec 600 400 200 0 2 3 4 5 6 No. of sats in the random formation 7 8 7 8 Average computation times (over 25 runs) 1000 800 sec 600 400 200 0 2 3 4 5 6 No. of sats in the random formation Figure 4.13: Average simulation and computation-time values for different number of satellites in the random formations. 4.4. Potential Function Shaping for Reducing Maneuver Time As discussed in Section 4.1.2, APFM generates sub-optimal trajectories which are not suitable for EMFF. One way to improve the sub-optimality of the trajectories is by reducing the maneuver time using Potential Function Shaping (PFS). The potential function used up to this point was a quadratic with an exponential obstruction term. The 107 convergence rate for such a potential function is governed by the gradient of the quadratic term (see Eq. (4.7)). This gradient approaches zero, as the EMFF satellites approach the desired positions, due to which the satellites can spend considerable time at the end of the maneuver as can be seen from Figure 4.2. This observation suggests a simple idea of improving the convergence rates by adding additional terms to the potential function that become significant near the desired final position. This idea will be explained further with the help of the two satellite formation whose dynamics are given by Eq. (4.1). Instead of using the potential function given by Eq. (4.3), the following potential function is defined: φ (t ) = 12 r1T Mr1 + O(r1 ) − γ 1 exp ( −γ 2 12 r1T Γr1 ) (4.40) where γ 1 and γ 2 are positive shaping constants, and Γ is a positive definite shaping matrix. Such a potential function is shown in Figure 4.14 (with exaggerated values for the shaping gains). From the figure it is clear that the potential function is shaped so that its gradient decreases much more slowly (as the satellite approaches the global minimum), as compared to the quadratic PF. The gradient of the potential function is given by: ( ) ∇φ (t ) = Mr1 + ∇O(r1 ) + γ 1γ 2 exp − 12 γ 2r1T Γr1 Γr1 (4.41) This gradient can be written as: ∇φ (t ) = M eff (r1 )r1 + ∇O(r1 ) (4.42) where M eff (r1 ) is the effective gain given by: M eff (r1 ) = M + γ 1γ 2 exp ( − 12 γ 2r1T Γr1 ) Γ 108 (4.43) Figure 4.14: A potential function for a 2-satellite formation in 2D with potential function shaping added. Thus for large values of the position error r1 , the effective gain approximately equals M while near the global minimum the effective gain increases therefore increasing the convergence rate. It should be noted that the addition of the PF shaping term does not change the Lyapunov stability of the formation, as can be seen from Eqs. (4.5) through (4.8), as long as control inputs remain unsaturated. Using PF shaping, the new control law becomes: r1 = − P −1 ( K (r1 , r1 )r1 + M eff (r1 )r1 + ∇OT ) (4.44) The damping gain K (r1 , r1 ) can be adjusted along the trajectories so that the satellite remains critically damped all the time. This leaves the designer with four parameters, namely M , γ 1 , γ 2 and Γ , to adjust. With the help of a nonlinear simulation, these parameters can be adjusted iteratively such that the maneuver time is as small as possible without saturating the control inputs. 109 4.4.1. Two-Satellite Formation Simulation Results using PF Shaping Consider a formation-flying telescope in deep-space with a detector module and a primary module. This two-satellite formation needs to complete a 90° slew maneuver to observe a new target. Using the nonlinear simulation with the PF shaping term added, the simulation results are shown in Figure 4.15. For comparison, the same formation slew maneuver was simulated without adding the PF shaping term and the results are shown in Figure 4.16. It can be seen that using the PF shaping reduces the maneuver time from over 1100 seconds to about 550 seconds without any control input saturation. Therefore, from a practical point of view, the use of PF shaping reduces the suboptimality of the trajectories considerably, making the algorithm more attractive for EMFF. y1, y2 (dashed) 5 m 5 m 10 0 -5 0 0 0 -0.02 -0.04 0 500 1000 time sec Ix2 and Iy2 (dashed) 0.04 50 50 0.02 A m/s 100 A 100 0 -50 0 200 400 600 time sec Meffx2 and Meffy2 (dashed) 1000 0 -50 500 1000 time sec Kx2 and Ky2 (dashed) 0.06 0.04 500 0.02 0 500 1000 time sec ydot1,ydot2 (dashed) 0 -0.02 0 0 500 time sec 1000 6 y (m) x 1e-6 -5 200 400 600 time sec Ix1 and Iy1 (dashed) xdot1, xdot2 (dashed) 0.02 m/s x1, x2 (dashed) 10 4 2 0 -2 0 0 200 400 time sec 600 0 0 500 time sec 1000 -4 -2 0 2 4 x (m) 6 Figure 4.15: Two-satellite formation reconfiguration result with PF shaping. 110 8 y1, y2 (dashed) 5 m 5 m 10 0 0 -5 1000 2000 time sec Ix1 and Iy1 (dashed) -100 A A 0 1000 2000 time sec Meffx2 and Meffy2 (dashed) 30 x 1e-6 0 0.01 10 0.005 0 1000 time sec 2000 1000 2000 time sec ydot1,ydot2 (dashed) 0.02 0 0 0 1000 time sec 2000 0 0 -0.02 1000 2000 time sec Kx2 and Ky2 (dashed) 0.015 20 0 0 0 -100 -0.01 -0.02 1000 2000 time sec Ix2 and Iy2 (dashed) 100 100 0 m/s 0 y (m) -5 xdot1, xdot2 (dashed) 0.01 m/s x1, x2 (dashed) 10 0 1000 time sec 2000 6 4 2 0 -2 -4 -2 0 2 4 6 8 x (m) Figure 4.16: 2-satellite formation reconfiguration result without PF shaping. 4.5. Solving the Dipole Equations In this section methods of solving the deipole equations for general EM formations will be discussed. The control law for an EM formation is given in the form of a desired acceleration that must be applied to each satellite in the formation at each control time step. For example for the APFM, a control law can be written by combining Eqs. (4.25) and (4.17) as follows: N ⎧ m ⎫ fi (p, v i , μ) = −Pi −1 ⎨K i (pi , v i ) v i + M i pi + 2 ∑ ∇OijT (p i , p j ) − ∇OiT0 + i κ ⎬ m0 ⎭ j =1, j ≠ i ⎩ (4.45) for i=1,…,N-1. Note the left hand side of the above equation is a nonlinear function of the control input vector μ given by Eqs. (2.24) for LEO formations and Eqs. (2.64) for deep-space 2D formations. Therefore, to find the desired control inputs, dynamic 111 inversion has to be used [38]. From this formulation, it is clear that the above control law for general electromagnetic formations can be written in the following form: f m (p, μ) = ac (p, v; c) + f d (p, v) (4.46) where: fm : 3N × 3N → 3N is the map for the magnetic accelerations on each satellite ac : 3N × 3N → 3N is the map for controller desired acceleration fd : 3N × 3N → 3N is the map for dynamics terms that are cancelled by the controller p = formation position vector v = formation velocity vector c = controller parameters At each given state of the formation, Eq. (4.46) can be written as: f m (p, μ) = a des (4.47) where: a des = desired acceleration at current state (a constant vector) Seen this way, Eq. (4.47) represents a set of 3N scalar equations in the unknown vector μ of size 3N at each given state of the formation. Since EM actuation cannot move the center of mass of the formation, as discussed in Chapter 1, there is another constraint on the magnetic accelerations, namely: N ∑mf i =1 i mi (p, μ) = 0 where mi is mass of the ith satellite in the formation, f m = [f m1 f m 2 (4.48) f mN ]T is the vector of magnetic accelerations acting on the satellites, and f mi is the specific magnetic 112 force on the ith satellite. This restriction means that the right hand side of Eq. (4.47) must also satisfy: N ∑m a i =1 i des =0 (4.49) This will be ensured if the control law is formulated in such a way that it does not try to move the center of mass of the formation. Using the above restriction, equations for one of the satellites can be written in terms of those for the rest of the satellites in the formation. In other words, the dynamics of one of the satellites would be dependent on the dynamics of the rest of the formation, hence in an N-satellite EM formation there are 3N-3 translational degrees of freedom and not 3N. Therefore, Eq. (4.47) represents a set of 3N-3 nonlinear equations with 3N unknowns. Since there are N − 1 vector equations for N dipoles, essentially one of the dipoles is unconstrained and is termed a “free dipole.” Looking at the form of the force equations between two dipoles, given by Eq. (2.20), it is clear that these equations are actually polynomial equations in the unknown vector μ . There are essentially two ways in which these dipole equations can be solved which are discussed in the following sections. 4.5.1. Solution by Fixing the Free Dipole One way of solving the dipole equations is to fix the extra degree of freedom that is present in the form of a free dipole and solve the equations using standard polynomial equation solution techniques such as the continuation method or homotopy. See Reference [10] for a detailed discussion of these methods. 113 4.5.2. Solution by Utilizing the Free Dipole for Angular Momentum Management The free dipole gives extra degrees of freedom in the solution. For example, for each “fixed” value of the free dipole there is at least one potential solution that exists for Eq. (4.47), therefore there exists an infinite number of solutions to the dipole equations. Utilizing these solutions to improve system performance is a desirable objective. As discussed in Chapter 1, one of the undesired side effects of using dipoles is the shear torque that acts on a satellite whenever a shear force is applied on it. This shear torque needs to be countered by momentum storage devices and angular momentum management can become an issue. Therefore, one of the ways in which the dipole equations can be solved is to utilize the “free dipole” and select the one solution, out of the possible infinite set of solutions, which results in minimum magnetic torque on all the satellites in the formation. Reference [10] discusses various ways of achieving that, but in this section a new algorithm for achieving this objective will be presented for which there is no need to solve for all the solutions of the dipole equations. In this new algorithm, instead of solving the dipole equations directly, the solution of the equations is formulated as a nonlinear optimization problem. Incidentally, it should be pointed out that many solution algorithms of nonlinear equations are essentially based on nonlinear optimization tools [39]. Therefore, this algorithm from a mathematical point of view is not very different from direct solution of the dipole equations except that it utilizes the extra degree of the freedom of the free dipole to arrive at a better solution. The Angular Momentum Management Optimization Problem (AMMOP) is defined as follows: 114 N { min ∑ Tim (tk ) μ ( tk ) i =1 Subject to: } + μTi (tk ) Wmi μ i (tk ) + [μ i (tk ) − μ i (tk −1 )] Wdi [μ i (tk ) − μi (tk −1 )] T W f m (p, μ) = a des N ∑mf i =1 i mi (4.50) (p, μ) = 0 Where: μ(tk ) = vector of unknown dipoles = [μ1 μ N ] at the current time step tk T μ(tk −1 ) = vector of dipoles values at the last time step tk −1 Wmi = diagonal dipole weighting matrix for satellite i Wdi = diagonal dipole differential weighting matrix for satellite-i i W = weighted 2 or infinity norm Tim (tk ) = Magnetic torque acting on satellite i at time step tk It can be seen from the cost function given in Eq. (4.50) that the optimization problem is set-up in such a way that accomplishes three objectives: 1) It tries to minimize the total magnetic torque acting on each satellite in the formation. 2) It tries to distribute the dipole strengths “evenly” on each satellite in the formation. Note that the weighting matrices, Wmi ’s, can be used to weight the dipoles on different satellites according to the maximum dipole strengths they can achieve. 3) And lastly the new dipole vector is computed in such a way that its change from the previously computed value is a minimum. This objective is added to avoid unnecessary switching of the dipoles at different time steps. The reason that dipoles may switch signs can be seen from Eq. (2.20) since changing the sign of both the dipoles does not affect the magnitude and force between two dipoles. This sign 115 switching may be beneficial from an angular momentum point of view (see Chapter 3), but too rapid switching at each time step may make the solution unsuitable for practical implementation. Therefore, this term can be used with a smaller or larger weighting matrix, accordingly. This solution methodology is used in the simulation results presented in this thesis. The advantage of this methodology is that there is no need to find all solutions to the polynomial dipole equations. Secondly, it ensures a continuous solution while at the same time minimizing the magnetic torque on all satellites in the formation. Although it may seem to be a complex problem, the cost is quadratic and once a solution is found by the optimizer, the next solution is very near to this solution. Hence, initializing the optimizer at each time step with the previously computed dipole vector, results in a very rapid convergence to the desired solution. Therefore, this methodology is suitable for real-time implementation for moderately sized (N~10) formations on the currently available hardware. 4.6. Summary In this chapter the Artificial Potential Function Method (APFM) was introduced with the help of an example. The motion planning problem using APFM was also briefly introduced, and its limitations from the point of view of EMFF were highlighted, while at the same time some workarounds to those limitations were presented. By combining the APFM and Lyapunov theory, a complete motion planning solution applicable to EMFF for generating collision-free trajectories for general EM formations was presented. In order to improve the formation maneuver times, the Potential Function Shaping method was presented and, with the help of an example it was shown that the maneuver times are 116 reduced by almost a factor of two. Lastly methods for dynamic inversion of the dipole equations were presented. 117 Chapter 5 Optimal Trajectory Generation for EM Formations 5.1. Introduction Real-time motion planning is an active area of research especially for nonlinear and constrained systems [36] like EMFF. For systems like EMFF, even finding feasible trajectories can be a challenging problem. One such method using APFM was presented in Section 4.1.2. It was pointed out that these methods generate trajectories which are not optimal. For EMFF, the cost of using controls (current) is negligible; hence the formation reconfiguration maneuvers are time optimal maneuvers. It is important to highlight that using sub-optimal trajectories for formation reconfiguration using EMFF results in underutilization of a designed system and hence can be regarded as a mass penalty during the system design process. This is illustrated with the help of the following example. 5.1.1. An Illustrative Example Using the Gen-X Mission The purpose of this example is to highlight the importance of using optimal trajectories for EMFF and to take a look at the nature of these optimal trajectories using a practical yet simple real-world application. Generation-X (Gen-X) is a concept space-based telescope that will observe light from celestial objects in the X-ray wavelength band. The science mission of the telescope requires sensitivity approximately 1000-times greater than the current X-ray telescopes such as Chandra. This results in focal lengths greater 119 than 50 m and hence formation flying of the primary (housing optics) and detector (housing sensors, etc.) modules of the telescope becomes a viable option. See Reference [42] and references therein for further details about the mission. For the purpose of this example it is assumed that the primary module has three orthogonal EM coils while the detector module has only one coil (see Figure 5.1), while both the modules are assumed to have three orthogonal reaction wheels for attitude control. N Coil y primary detector c.m. S Coil z (orthogonal coil) z y N S N x S Figure 5.1: Coil architecture for the Gen-X mission with block arrows showing the forces and torques acting on the dipoles. For scientific observations it is desired to slew the telescope in different directions. To describe such slewing maneuvers in the xy-plane, the relative dynamics of the detector module with respect to the primary module, in a cylindrical reference frame attached to the center of mass of the primary module, can be described by the following equations: r − rθ 2 = M D + M P 3μ0 μ Py μ D M D M P 2π r 4 M + M P 3μ0 μ Pz μ D rθ + 2rθ = D M D M P 4π r 4 where: (r ,θ ) = Polar coordinates of detector module w.r.t. primary c.m. M P = Primary module mass 120 (5.1) M D = Detector module mass μ D = Detector module dipole strength μ Py = Detector module y-dipole strength μ Pz = Detector module z-dipole strength In these equations it is assumed that during a slewing maneuver the primary and detector attitude control keep the two modules facing each other. Using these dynamics a simple non-optimal slewing profile can be defined as the “arc profile” in which the detector moves along an arc at a fixed distance from the primary in the xy-plane. In such a maneuver the y-coil on the primary module provides the necessary centripetal force while the z-coil provides the necessary shear force. The results for a 90-degrees slew are shown in Figure 5.2. To determine the optimal slewing profile, an optimal control problem can be posed as follows: J = θ (t f ) → max; t0 = 0; t f = T ; x0 = [ r0 0 θ0 0] ; r (t f ) = r0 T (5.2) In this problem, for a given coil mass for both the primary and detector modules, the total slewing angle is maximized in a given time with the constraint that the final distance between the detector and primary modules be the same as at the start, thus resulting in an optimal slewing profile. This is a split boundary value problem that is difficult to solve analytically, but by making the assumption that the detector coil carries constant maximum current during the slewing maneuver, the problem is simplified since the control inputs μ Py and μ Pz enter linearly into the dynamics. From Pontryagin’s 121 Minimum Principle (PMP) it is known that such systems result in “bang-bang” control where the control input varies between its maximum and minimum allowed values [43]. Because of the symmetry of the problem, it can be seen that this results in a control profile as shown in Figure 5.3. From this figure it is clear that only one parameter, namely Tswitch, completely determines the optimal slew profile given the coil masses. This parameter was determined by writing a Matlab code that performed a search over switching times such that the conditions in Eq. (5.2) were satisfied subject to the dynamics given by Eqs.(5.1). This is essentially a non-linear mathematical program that can also be solved by using NLP (Non-Linear Program) solvers discussed later in this chapter. In order to compare the results of the optimal profile with those of the arc profile, the dipole mass, or equivalently the maximum dipole strength, was reduced such that the same slewing angle was achieved in the same time as the arc profile. Using this reduced coil mass, an optimal slewing profile is shown in Figure 5.4. As can be seen by comparing Figure 5.2 and Figure 5.4, the control values required for the optimal slewing profile are approximately half that required for the nonoptimal arc slewing profile. Therefore, using the optimal slewing profile results in nearly a saving of half the coil mass as compared to the non-optimal profile; which is significant from the system design point of view. Another aspect of the optimal slewing profile or optimal EMFF trajectories in general is that these trajectories are not necessarily minimum distance trajectories. As can be seen from Figure 5.4, the detector module travels a much longer distance than the straight line, to achieve time optimality. This is due to the fact that magnetic forces between the dipoles become much stronger as the modules become closer, resulting in 122 much higher control authority and hence less time to complete the maneuver. This has significant implications for any optimal trajectory planner for EMFF in the sense that the planner cannot ignore the nonlinear nature of the dipole actuators. Any optimal trajectory planning for EMFF must include the complete nonlinear dipole actuator dynamics, otherwise the resulting trajectories will be highly suboptimal as demonstrated by the above example. r vs time x 10 20 40 time min. theta vs time 60 4 2 0 -2 0 20 60 x 10 1 0 -1 0 60 x 10 1 0 -1 0 m/s m 51 50 49 0 rad/s deg 100 50 5 x 10 40 mupy vs time 5 A-m2 A-m2 0 0 0 0 20 40 rdot vs time -18 -3 20 40 time min. thetadot vs time 60 20 40 time min mupz vs time 60 20 40 time min H vs time 60 20 40 time min 60 6 1000 Nms 100 50 0 49 49.5 50 r (m) 50.5 0 -1000 0 51 Figure 5.2: Non-optimal slew results for the Gen-X mission. μ Pz A-m 2 A-m 2 theta (deg) time min r vs theta T/2 T μ Py time time Tswitch T/2 T-Tswitch T Figure 5.3: Control profile for the optimal slew maneuver. 123 r r vs time dot 0.05 m/s m 60 40 20 0 20 40 60 0 -0.05 0 time min. theta vs time rad/s deg 100 50 0 0 5 0 -5 0 20 5 40 60 mupy vs time A-m2 A-m2 x 10 20 40 60 x 10 4 2 0 0 x 10 5 0 -5 0 time min r vs theta 100 5 40 time min. thetadot vs time 60 20 60 40 time min mupz vs time 20 40 60 40 60 400 50 0 20 -3 20 time min H vs time Nms theta (deg) vs time 30 40 r (m) 200 0 0 50 20 time min Figure 5.4: Control profile for the optimal slew maneuver. In summary, finding optimal trajectories for EMFF is important from a system design point of view and is a nonlinear problem. The purpose of the following sections is to formulate the optimal control problem for general electromagnetic formations and also to present the algorithms that can be used to solve these problems. 5.2. Optimal Control Problem Formulation for EMFF As demonstrated by the illustrative example in the last section, the optimal trajectory planning problem for EMFF is coupled with the EMFF system design for any given mission. Since the design of electromagnetic formation systems is beyond the scope of this thesis, only the optimal trajectory planning for a given EMFF system will be considered in this thesis; nevertheless the tools presented here can be extended to include the overall optimal design process for general electromagnetic formations. 124 In the remainder of this chapter, Optimal Time Reconfiguration Problems (OTRP) with collision avoidance for general electromagnetic formations will be considered. In this problem the formation is to be reconfigured from a known initial state to a known terminal state in minimum time. Formally, the OTRP for an N-satellite electromagnetic formation can be defined as follows: ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ OTRP ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ tf min J = ∫ dτ 0 μ ,t f Subject to: Dynamics: Initial Conditions: x = f (x, μ) x0 = x(0) = [x10 Terminal Conditions: x f = x(t f ) = [x1 f Control Constraints: x N 0 ]T x 20 x2 f −μi max < μ i (t ) < μ i max x Nf ]T i = 1...N , t ∈ [0, t f ] (5.3) Collision Avoidance: min dij (t ) > Dmin ∀i ≠ j , i, j = 1...N , t ∈ [0, t f ] RW Saturation: hiRW (t ) < H i max N C.M. Constraint: ∑m x i =1 where x :[0, t f ] → Nns i i0 = ∑ mi xif i =1 denotes the state vector of the formation, μ :[0, t f ] → denotes the formation control vector, xi :[0, t f ] → μ i :[0, t f ] → nc i = 1...N , t ∈ [0, t f ] N ns Nnc is the state vector of satellite i, is the control vector for satellite i, Dmin is the minimum distance allowed between any two satellites, H i max is the maximum angular momentum that can be stored on the reaction wheels of satellite i, and dij (t ) represents the distance between satellites i and j at time t. In this problem appropriate equations for the dynamics can be used depending on the problem at hand, e.g. in LEO Eqs. (2.24) can be used while in deep space Eqs. (2.55) may be used. Note that in this formulation the reaction wheel angular momentum is managed as a hard constraint in the problem instead of minimizing it in the cost integral. This formulation ensures that the reaction wheels never cross the 125 saturation limit and hence utilize the system to the maximum possible extent. The last constraint in the problem is added to ensure that the terminal and initial conditions of the formation are defined in such a way that the center of mass (C.M.) of the formation is not moved. 5.3. Overview of Solution Methodologies The optimal time control problem defined in the previous section is a coupled nonlinear problem with control and trajectory constraints. There has been extensive research going on for the solution of optimal control problems for the past half century or so and a large bulk of literature exists on different methods for solving these problems [44]. The solution approach for these problems can be roughly divided into two broad categories. The first category invokes calculus of variations to derive the necessary optimality conditions that define an optimal solution for the problem. These approaches, called “indirect” methods, result in a coupled differential algebraic boundary value problem (BVP). This BVP can be solved using a number of existing tools for solving such equations such as shooting or multiple shooting methods [45]. The complication with this approach is that this method is extremely sensitive to the distance of the current control estimate from the optimal control. If we do not start our initial guess so that it is near to the optimal value, then the chances of convergence are rather slim. Secondly, the presence of trajectory and control constraints make the problem much harder to solve as one needs to know the time intervals for constrained and unconstrained arcs in order to solve the problem [46]. Another approach that will be used in this chapter is called a “direct” approach in which the optimal control problem is transcribed into a finite dimensional mathematical 126 program and then this program is solved directly using standard packages. In this method we can transcribe both the control and the state vectors and represent them in a finite dimensional space and solve them using existing NLP packages. Another possible implementation is to represent only the control vectors in a finite dimensional space and use some fixed step explicit integration technique such as RK4 (Runge-Kutta order 4) or higher order methods to integrate the dynamics from 0 to tf using the current estimate of the control vector. Figure 5.5: Relationship between “direct” and “indirect” methods and the Covector Mapping theorem [47]. In order to understand the relationship between these different solution methodologies, consider a basic optimal control Problem B (such as OTRP given in (5.3)) and its solution paths as shown in Figure 5.5. In the “indirect” approach, Problem Bλ is formed by using Pontryagin’s Minimum Principle (PMP) which itself needs to be solved by approximating it to Problem Bλ N as discussed earlier. In the “direct” approach 127 the Problem B is directly discretized to Problem B N which is in general a nonlinear program (NLP) and can be solved by using existing NLP packages. It is important to note that using the Karush-Kuhn-Tucker (KKT) optimality conditions [39] for the Problem B N give rise to the dual problem B N λ which, under appropriate conditions, can be transformed to Problem Bλ N using the Covector Mapping Theorem [47]. This essentially means that the costates of the optimal control problem can also be computed from the Lagrange multipliers of the solution of the nonlinear program. It should be noted that not all “direct” methods can be used to generate the costate estimates for the optimal control problem this way, although the Legendre Pseudospectral method discussed later in the chapter generates the costate vector by a very simple transformation of the Lagrange multipliers of the NLP. For a historical perspective on the relationship of the direct and indirect methods see [48]. 5.4. Direct Shooting Method In this section a direct shooting algorithm will be presented that will be used to solve optimal time problem for EMFF, and the strengths and weaknesses of the algorithm will be discussed. 5.4.1. A Description of the Algorithm The direct shooting method, also sometimes known as the sequential method [49], the control vector is parameterized by piecewise polynomials and optimization is done with respect to these variables only. Given the initial conditions x0 , the optimal control problem DAE (Differential Algebraic Equations) are solved using explicit integration methods in a loop driven by the NLP solver as shown in Figure 5.6. A detailed 128 description of the method as it is applied to solve the OTRP (5.3) is given in the following paragraphs. û x0 tf NLP Solver _ ∫ f (x, uˆ )dt + 0 xf Figure 5.6: Direct shooting method for solving optimal control problems. Since OTRP is a free terminal time problem, the free time variable is scaled according to: τ= t tf (5.4) With this change of variable, the OTRP can be written in the computational domain as follows: ⎧ ⎪ ⎪ ⎪ ⎪ OTRPc ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ tf min J = ∫ dτ μ ,t f Subject to: Dynamics: Initial Conditions: 0 x(τ ) = f (x, μ,τ ) x0 = x(0) = [x10 x 20 Terminal Conditions: x f = x(1) = [x1 f Constraints: c(x, μ) ≤ 0 x N 0 ]T x2 f (5.5) x Nf ]T τ ∈ [0,1] where all of the constraints have been combined for simplicity and the function names have been kept the same, although the independent variable is now different. Given the 129 initial conditions x0 , an estimate of the control vector μ̂ and terminal time t f , the terminal solution to the dynamics can be computed as follows: tf x(1) = ∫ f (x, μˆ ,τ )dt (5.6) 0 Since a closed form solution to Eq. (5.6) is not available in general (especially for EMFF), the solution is approximated using an explicit integration method such as classical RK4 (Runge-Kutta-4) [50] as follows: x = xˆ (1) = x(0) + M f h M −1 ∑ k (xi , μˆ i , μˆ i +1 ,τ i ) 6 i =0 (5.7) where M is the number of intervals each of length h in which the computational domain Nnx [0,1] is divided for approximation and the function k : × Nnu × Nnu × → Nnx is defined by the following relations: k (xi , μˆ i , μˆ i +1 ,τ i ) = k1 + 2k 2 + 2k 3 + k 4 k1 = f (xi , μˆ i ,τ i ) k 2 = f ( xi + h2 k1i , 12 (μˆ i + μˆ i +1 ),τ i + h2 ) k 3 = f ( xi + k , (μˆ i + μˆ i +1 ),τ i + h 2 1 2i 2 h 2 (5.8) ) k 4 = f ( xi + hk 3i , μˆ i +1 ,τ i + h ) Note that in the above formulation, the value of the control vector at the middle of the interval is approximated by taking its average. For better approximations the control values at the middle of the intervals can also be defined as additional NLP variables. The RK4 method gives results accurate to O(h 4 ) and can also be used to approximate the cost integrals, if any, in the optimal control problem. By defining a combined unknown control vector as μ M = [μˆ 0 μˆ 1 μˆ M ]T where μˆ i is the unknown control vector at the grid point i, the above approximation of the terminal conditions can be written as: 130 x Mf = RKINT ⎡⎣f ; x0 , μ M ) ⎤⎦ (5.9) where the integration approximation is viewed as an operator RKINT acting on the vector field f and taking initial conditions and a control vector as inputs. Viewed this way, it is clear that for each given initial condition, and given control vector values at the grid points, a trajectory is generated which will not be in general a feasible trajectory, i.e. it will not satisfy all the constraints. To obtain a feasible and ultimately an optimal trajectory, the following nonlinear optimization problem can be defined: ⎧ ⎪ ⎪ ⎪ ⎪ OTRP-M ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ min J = g (t f , μ M ) M μ ,t f Subject to: x f − x Mf = 0 x Mf = RKINT ⎡⎣f ; x0 , μ M ) ⎤⎦ (5.10) c( x M , μ M ) ≤ 0 The NLP defined by OTRP-M fits the formation of standard NLP solvers such as Matlab fmincon and SNOPT [51], [52]. These solvers use the SQP (Sequential Quadratic Programming) technique that explicitly takes into account the equality and inequality constraints by using an exact penalty to convert the problem into an unconstrained one, and then solve a series of such problems to arrive at the local minima [39]. See Reference [51] and references therein for further details about the SQP algorithm. In the above formulation of the OTRP-M, the formation trajectory approximation given by x M = [x0M x1M x MN ]T is needed to construct the nonlinear constraints c(x M , μ M ) that can be generated by saving the output of RKINT at each grid point. Using this trajectory, many nonlinear constraints such as collision avoidance, reaction wheel saturation etc. can be implemented in this algorithm. 131 5.4.2. Some Theoretical Considerations and Limitations of the Algorithm The direct shooting or sequential method essentially parameterizes an infinite dimensional optimal control problem by approximating it in a finite dimensional space. From a practical point of view, convergence of the algorithm at two levels must be considered. First, the resulting NLP must converge to a solution and second, the solution to the approximate problem must converge in some sense to the solution of the original problem. It should be noted that the SQP algorithm is concerned with the convergence of the NLP while the method that is used to discretize the optimal control problem must be consistent in some sense such that it converges to the solution of the original problem as the discretization level is made finer. More specifically, consistent approximation in the sense of Polak [53] means that the stationary points of the approximation problem converge to the stationary points of the original optimal control problem as the step size of the RK method is decreased. It should be noted that not all RK methods result in consistent approximations as shown in [54]. A detailed theoretical discussion of the consistency of the approximation of direct shooting algorithms is beyond the scope of this thesis; see References [53] and [54] for further details. For a successful implementation of the direct shooting algorithm, it is essential that the underlying unknown control vector must be approximated by as few parameters as possible. If a large number of parameters are required to parameterize the control vector then the method suffers from at least two problems. One is that the computational cost of numerically computing the gradients required by the NLP solver increases 132 exponentially with the number of unknown control parameters. Indeed the gradients of the constraints can be approximated by the central difference as follows: ci (μ M + δ μ j ) − ci (μ M − δ μ j ) ⎡ ∂c ⎤ ⎢ ∂μ M ⎥ = 2 δμ j ⎣ ⎦i, j (5.11) where: ⎡ ∂c ⎤ th ⎢ ∂μ M ⎥ = (i,j) entry of the Jacobian matrix of constraint gradients ⎣ ⎦i, j δ μ j = A small vector change in the direction of μ Mj . As can be seen from the formulation of the OTRP-M given in (5.10), the computation of the ci’s requires integrating the dynamics once for each perturbation. Thus the trajectory must be integrated at least n times where n equals the length of the approximate control vector μ M . This cost can be reduced somewhat by recognizing that perturbing a control variable later in time does not affect the initial time history of the trajectory. Therefore, integration can start at a later point in time by using saved trajectory information. The second limitation of the direct shooting algorithm is the fact that the computation of the gradients is more sensitive to the perturbations occurring earlier in the trajectory, as these perturbations propagate to the end and can have very nonlinear effects on the terminal constraints. This limitation can be overcome by using the so-called “multiple shooting” algorithm in which the time is divided into segments and both control and state variables are discretized at these segment end points, or cardinal nodes [55], while only the control variables are discretized within each segment. This way the errors due to gradient approximations remain within the segments and the algorithm achieves better overall accuracy, although at the expense of a larger NLP. It should be 133 noted that in the limit when all the discretization nodes become cardinal nodes, the algorithm is called “full transcription” in which both state and control variables are discretized at all the nodes. One such algorithm using a Pseudospectral method is discussed in Section 0. 5.4.3. Results Consider the same problem given in the illustrative example of Section 4.1.1 where twosatellites switch places. The results using APFM are given in Figure 4.2 and it took over 750 seconds to reconfigure the formation. The optimal time results using the direct shooting method are given in Figure 5.7. x1 and x2 (x=2) vs time y1, y2 (x=2) vs time sat 1 & 2 (x) trajectory 2 5 1 2 0 0 0 -5 -1 -10 0 100 200 300 -2 0 x1dot, x2dot (x=2) vs time 0.2 y 10 -2 100 200 -5 300 y1dot, y2dot (x=2) vs time 0.1 0 x 10 Hrw1 Hrw2 5 0 -0.2 0 0 100 200 300 -0.1 0 ux optimal (x=2) 100 0 0 -100 -100 0 100 200 time (sec) 0 100 200 uy optimal (x=2) 100 0 5 300 -5 0 100 200 time (sec) 300 tf opt = 266.076053 M = 50 Max Total abs(Hrw) = 18.160496 Min Dist = 3.002609 100 200 time (sec) Figure 5.7: Results for two-satellite that switch places using the direct shooting method. 134 The optimal time to complete the maneuver is 266 seconds for this highly constrained and nonlinear problem. The maximum current, maximum reaction wheel angular momentum and minimum distance were constrained to be 100 A, 10 N-ms and 3 m, respectively. 5.5. Legendre Pseudospectral Method Pseudospectral methods have gained popularity in the last five years due to the successful application of these methods to trajectory generation for a large class of nonlinear systems [56]-[60]. These methods are based on “full transcription” or discretization of both the control and state variables of the optimal control problem at predefined time values or nodes. The underlying unknown control and state vectors are approximated by interpolating their values at the nodes using orthogonal polynomials as discussed in the following section. It is important to point out that Pseudospectral methods are based on representing the unknown trajectory using global polynomials. Therefore, if the trajectory and/or control history has discontinuities, then approximation errors will be larger, and in such cases generally the trajectory is broken into phases or knots [61] and represented using piecewise continuous polynomials. For EMFF in general, the trajectory and control histories are discontinuous (see Figure 5.7) due to constraints in the system and the minimum time nature of the problem. Therefore, to find time optimal trajectories, these phases have to be defined. Unfortunately, the number of these phases is not known a priori for a given problem and, moreover, these phases can increase the complexity and computation time of the solution. Another disadvantage, from a practical point of view, is that the presence of switching in the control inputs can make the actual real-time 135 implementation of these optimal trajectories difficult. To avoid these difficulties, the optimal control problem for EMFF OTRP (5.3) will be modified so that it always generates at least C1-solutions (i.e. at least one-time differentiable): ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ OTRPC ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ min J = ∫ 0 μ ,t f Subject to: Dynamics: Initial Conditions: tf (1 + μ Rμ ) dτ T x = f (x, μ) x0 = x(0) = [x10 Terminal Conditions: x f = x(t f ) = [x1 f Control Constraints: x N 0 ]T x 20 x Nf ]T x2 f −μi max < μ i (t ) < μ i max i = 1...N , t ∈ [0, t f ] (5.12) Collision Avoidance: min dij (t ) > Dmin ∀i ≠ j , i, j = 1...N , t ∈ [0, t f ] RW Saturation: hiRW (t ) < H i max hiRW (t f ) = H if RW Terminal Constraint: C.M. Constraint: N ∑m x i =1 i = 1...N , t ∈ [0, t f ] i i = 1, 2, ,N N i0 = ∑ mi xif i =1 where μ represents the time derivative of the control vector and R is a weighting matrix. This formulation minimizes the 2-norm of the rate of change of the control vector and hence forces the solution to be at least C1-continuous. In the following section an algorithm will be developed using Legendre polynomials that will be suitable for solving a general EMFF optimal control problem such as OTRPC (5.12). 5.5.1. Approximating Functions, their Derivatives and Integrals using Orthogonal Polynomials An arbitrary function y (t ) can be approximated by an Nth degree polynomial at the N+1 interpolation points using the Lagrange interpolation formula [64] as follows: N y (t ) ≈ y (t ) N = ∑ y (ti )φi (t ) i =0 136 −1 ≤ t ≤ 1 (5.13) where ti ’s are the discretization time values, and φi (t ) is the ith N+1 degree interpolating basis polynomial (also called Cardinal Function) and is defined as follows: t − tm m = 0 ti − t m N φi (t ) = ∏ (5.14) m ≠i Note that φi (t ) ’s are generally constructed using Chebyshev or Legendre polynomials. The interpolation points (also called collocation points) are defined by their corresponding roots in order to avoid the Runge Phenomenon [60] and as well as to get the minimum possible approximation error. Let, N w(t ) = ∏ (t − tm ) (5.15) m=0 be the N+1 degree polynomial with N+1 roots {t0 , t1 , t N } . Then, its derivative at the roots can be written as: N w(ti ) = ∏ (ti − tm ) m =0 m ≠i (5.16) Using these definitions, the Cardinal Function can be written as: N w(t ) m = 0 (t − ti ) w(ti ) φi (t ) = ∏ (5.17) m ≠i Note that a desired property of Cardinal Functions, that can be seen by an inspection of Eq. (5.17), is that they are orthonormal, i.e.: ⎧1 ⎩0 φi (tk ) = ⎨ if i = k otherwise (5.18) It is known that interpolating the function at Gauss quadrature points results in minimum approximation error to the function and its derivatives [60]. For BVPs (Boundary Value Problems), for which both the initial and terminal conditions are defined, LGL (Legendre-Gauss-Lobatto) points defined by: 137 t0 = −1 LN (tk ) = 0 k = 1, 2, , N −1 (5.19) tN = 1 form the nodes of Legendre Cardinal Functions. Here, LN (t ) is the derivative of the Nth degree Legendre polynomial. Legendre polynomials are orthogonal over the interval [−1,1] , i.e., N≠M ⎧ 0 ⎪ ∫ LN (t ) LM (t )dt = ⎨ 2 N = M −1 ⎪⎩ 2 N + 1 1 (5.20) and are solutions to the following second order differential equation [77]: (1 − t 2 ) LN (t ) − 2tLN (t ) + N ( N + 1) LN (t ) = 0 (5.21) Using LGL-points, Eq. (5.15) can be written as: w(t ) = (t 2 − 1) LN (t ) (5.22) Similarly using Eq. (5.21), Eq. (5.16) can be written as: w(tk ) = N ( N + 1) LN (tk ) (5.23) Using Eqs. (5.22) and (5.23), the Cardinal Function given by Eq. (5.17) can be written as: φi (t ) = (t 2 − 1) LN (t ) N ( N + 1)(t − ti ) LN (tk ) (5.24) Note that the Cardinal Functions defined by the above equation are called Legendre Cardinal Functions since Legendre polynomials are used in their construction. Using a similar procedure, other Cardinal Functions can be constructed using, for example, Chebyshev polynomials. Legendre Cardinal Functions are shown for N=5 in Figure 5.8 which clearly shows the orthonormality of these functions and uneven distribution of the LGL-points. 138 Using Eq. (5.13), the derivative of the unknown function y (t ) can be approximated by: N y (t ) ≈ y (t ) N = ∑ y (ti )φi (t ) −1 ≤ t ≤ 1 (5.25) i =0 Therefore, the derivative can be simply approximated by evaluating the derivatives of the Cardinal Functions. More specifically, at the collocation points: N y (tk ) N = ∑ y (ti )φi (tk ) (5.26) i =0 By defining a vector: y N = [ y (t0 ) y (t N )]T , the above equation can be written y (t1 ) as: y N = Dy N (5.27) where D is an ( N + 1) × ( N + 1) matrix. Figure 5.8: Cardinal functions (N=5) using Legendre Polynomials and LGL points (squares) 139 The matrix D can be computed by differentiating Eq. (5.24) and, after some algebraic manipulations and using some properties of Legendre polynomials, can be shown to be: ⎧ LN (tk ) 1 ⎪ L (t ) t − t ⎪ N i k i ⎪ − N ( N + 1) ⎪ D = [ Dki ] = ⎨ 4 ⎪ N ( N + 1) ⎪ 4 ⎪ ⎪⎩ 0 k ≠i k =i=0 (5.28) k =i= N otherwise In a similar fashion the integral of a function can be approximated as: t t ∫ y(τ )dτ ≈ ∫ y(τ ) −1 −1 N N t i =0 −1 dτ = ∑ y (ti ) ∫ φi (τ )dτ −1 ≤ t ≤ 1 (5.29) The values of the integral at the collocation points can be written as: tk ∫ −1 where W ∈ N ×( N +1) N y (τ ) N dτ = ∑ y (ti ) Wki (5.30) i =0 is an integration matrix whose entries are defined by: tk Wki = ∫ φi (τ )dτ (5.31) −1 It can be shown that the entries of this matrix are given by [65]: Wki = ωk ⎡ N ⎤ 1 + t + Lm (tk ) { Lm +1 (ti ) − Lm −1 (ti )}⎥ ∑ i ⎢ 2 ⎣ m =1 ⎦ i = 0,1, , N k = 1, 2, , N (5.32) where ωk ’s are familiar Gauss Quadrature weights that are used to evaluate the integral of an unknown function from -1 to 1 and are given by: 1 ωk = ∫ φk (τ )dτ = −1 2 1 N ( N + 1) LN (tk ) 2 140 (5.33) Note that these approximations would be exact (i.e. error would be zero) if the unknown function y (t ) were a polynomial of degree N-1 or less. For other functions the Cauchy Interpolation Error Theorem [60] gives the error as follows: 1 d N +1 y (t ) (ξ ) w(t ) y (t ) − y (t ) = ( N + 1)! dt N +1 N (5.34) where y (t ) is assumed to be at least N+1 times differentiable, i.e. y (t ) ∈ C N +1 , ξ ∈ [−1,1] , and w(t ) is defined by Eq. (5.15) and Eq. (5.22) for Legendre Cardinal Functions. By integrating and differentiating Eq. (5.13), the error bounds for the derivative and integral approximations can be computed. It is important to see that for a given interpolation scheme, such as at LGL points, the error is a function of the smoothness of the unknown function. This is demonstrated by plotting the infinity norm of the errors of two test functions defined as follows: 1 t +2 1 f 2 (t ) = 2 t +2 f1 (t ) = 4 −1 ≤ t ≤ 1 (5.35) −1 ≤ t ≤ 1 These functions and their derivatives were approximated by the Legendre Cardinal Functions and the infinity norm of the errors is plotted in Figure 5.9. This plot clearly shows that the error is reduced by increasing the degree of the polynomial; moreover, the effect of the smoothness of the function is also clearly visible as the interpolation error for the “smoother” function f 2 is smaller. The effect of the smoothness of the function can be seen by looking at the infinity norm of the nthderivative of the functions. Let, 141 g1 (n) = 1 d n f1 (t ) ( N + 1)! dt n − 1 ≤ t ≤ 1, ∞ n d f 2 (t ) 1 g 2 ( n) = ( N + 1)! dt n (5.36) n ∈ {1, 2, } ∞ then, g1 and g 2 give an estimate of the interpolation error due to the inherent nature of the underlying function (scaled by 1/( N + 1)! ). This result is shown in Figure 5.10 and clearly shows that a smoother function (e.g. f 2 ) results in much less interpolation error as compared to a more rapidly changing function such as f1 . 2 10 f1 error norm f2 error norm 0 10 f1dot error norm f1dotdot error norm f2dot error norm -2 10log(||error||) 10 f2dotdot error norm -4 10 -6 10 -8 10 -10 10 -12 10 5 10 15 Polynomial degree N 20 25 Figure 5.9: Infinity norm of the interpolation error for test functions given by Eq. (5.35) 142 0 10 -1 10 g1 g2 -2 10 -3 10 -4 10 -5 10 0 2 4 6 8 10 12 Derivative order 14 16 18 20 Figure 5.10: Infinity norm of the derivative for test functions given by Eq. (5.35) 5.5.2. Review of the Legendre Pseudospectral Method In this section a Legendre Pseudospectral algorithm [62], [63] will be developed that is applicable to fairly general optimal control problems and in particular to the OTRPC (5.12). Consider the following control problem: ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎪ G⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩ min J = h ( x(τ f ),τ f ) + ∫ g ( p(τ ), v (τ ), u(τ ), u(τ ) ) dτ τf τ0 u ,τ f Subject to: Dynamics: Initial Conditions: p(τ ) = v (τ ) v (τ ) = f (x, u,τ ) ψ 0 ( x(τ 0 ),τ 0 ) = 0 Terminal Conditions: ψ f ( x(τ f ),τ f ) = 0 Algebraic Constraints: c ( x(τ ), u(τ ),τ ) ≤ 0 τ Integral Constraints: τ ∈ [τ 0 ,τ f ] ∫ q ( x(s), u(s), s )ds − z(τ ) ≤ 0 τ0 143 (5.37) τ ∈ [τ 0 ,τ f ] τ ∈ [τ 0 ,τ f ] In the general problem G, the objective is to determine the control function u(τ ) ∈ and state trajectory x(τ ) = [p(τ ) p(τ ) ] ∈ T given above. The functions ψ 0 ∈ and terminal constraints and c ∈ p r 2n and ψ f ∈ m that minimizes the Bolza cost function q , with p, q ≤ 2n , represent the initial are nonlinear constraints on both the state and control vectors. The integral inequality constraints are added to enforce generalized constraints such as the reaction wheel angular momentum constraints required in the problem OTRPC (5.12). Note that the dynamics in this formulation are specifically applicable to Newtonian translational dynamics of mechanical systems such as EMFF. The reason for representing the dynamics in this form is that the Legendre Pseudospectral method can be used to save the number of unknown NLP variables by exploiting higher derivatives as discussed in the following paragraphs. The problem G is defined over an interval [τ 0 ,τ f ] while the orthogonal polynomials are defined over [-1,1]. Therefore the problem is transformed to the computational domain using the following transformation: τ = 12 (τ f − τ 0 ) t + 12 (τ f + τ 0 ) Using this transformation, the problem G transforms to: 144 (5.38) ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ Gc ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ min J = h ( x(1),τ f ) + τ f −τ 0 2 u ,τ f Subject to: p(t ) = Dynamics: v (t ) = 1 ∫ g ( p(t ), v(t ), u(t ), u(t ) ) dt −1 τ f −τ 0 2 τ f −τ 0 v (t ) t ∈ [-1,1] f ( x, u , t ) 2 ψ 0 ( x( −1),τ 0 ) = 0 Initial Conditions: (5.39) Terminal Conditions: ψ f ( x(1),τ f ) = 0 Algebraic Constraints: c ( x(t ), u(t ), t ) ≤ 0 Integral Constraints: τ f −τ 0 2 t ∈ [−1,1] t ∫ q ( x(s), u(s), s )ds − z(t ) ≤ 0 t ∈ [-1,1] −1 Note that in problem Gc the variable and function names are kept the same for simplicity. As discussed previously, the Legendre Pseudospectral method discretizes the problem by representing the unknown functions as follows: N p(t ) ≈ p(t ) N = ∑ p(ti )φi (t ) i =0 N u(t ) ≈ u(t ) = ∑ u(ti )φi (t ) N (5.40) i =0 where the Cardinal Functions φi (t ) are defined by Eq. (5.24). Substituting these approximations into the cost integral in problem Gc results in the following approximation cost: J N = h ( x(1) N ,τ f ) + τ f −τ 0 2 1 ∫ g ( p(t ) N , v (t ) N , u(t ) N , u(t ) N ) dt (5.41) −1 Using Gauss-Lobatto integration [66] the cost can be further approximated as: J N = h ( x(1) N ,τ f ) + τ f −τ 0 2 N ∑ g ( p(t ) k =0 N k 145 , v (tk ) N , u(tk ) N , u(tk ) N ) ⋅ ωk (5.42) where ωk ’s are Gauss-Quadrature weights given by Eq. (5.33). It should be clear that by construction of the interpolation, p(tk ) N = p(tk ) and u(tk ) N = u(tk ) . For notation simplification let p(tk ) = p k and u(tk ) = u k which represent the values of the position state and control vectors at the LGL (Legendre Gauss Lobatto) grid points, or collocation points. Note that each position vector sample is of size n while each control vector sample is of size m, i.e. x k ∈ n and u k ∈ m . Combining these samples, the full unknown state values are defined in the form of a matrix as follows: ⎡ pT0 ⎤ ⎡ p01 ⎢ T⎥ ⎢ p p N P = ⎢ 1 ⎥ = ⎢ 11 ⎢ ⎥ ⎢ ⎢ T⎥ ⎢ ⎣⎢p N ⎦⎥ ⎣ pN 1 Note that P N ∈ ( N +1)× n p02 p12 pN 2 p0 n ⎤ p1n ⎥⎥ ⎥ ⎥ pNn ⎦ (5.43) , thus each column of this matrix represents the samples of a given position state at the collocation points. Similarly the control matrix can be defined as: ⎡ uT0 ⎤ ⎡ u01 u02 ⎢ T⎥ ⎢ u u12 u N U = ⎢ 1 ⎥ = ⎢ 11 ⎢ ⎥ ⎢ ⎢ T⎥ ⎢ ⎢⎣u N ⎥⎦ ⎣u N 1 u N 2 Note that U N ∈ ( N +1)× m u0 m ⎤ u1m ⎥⎥ ⎥ ⎥ u Nm ⎦ (5.44) . In this matrix notation the superscript N is included to remind us that these vectors are the samples of the unknown state trajectory and control histories in the space of Nth order polynomials, i.e. p(t ) N , u(t ) N ⊆ P N . Given this notation, the velocity can be computed simply by using the differentiation matrix given by Eq. (5.28) as follows: V N = DP N 146 (5.45) ( N +1)× n where V N ∈ . In this formulation, since v (t ) N is completely determined once p(t ) N is known, there is no need to define the matrix V N as unknown variables in the discretization of problem Gc resulting in considerable savings in the number of NLP variables. In a similar fashion the time derivative of the control can be computed as: U N = DU N ( N +1)×m where U N ∈ (5.46) is a matrix that gives the rate of change of each control input at each collocation point and is defined as: ⎡ uT0 ⎤ ⎡ u01 u02 ⎢ T⎥ ⎢ u u12 u N U = ⎢ 1 ⎥ = ⎢ 11 ⎢ ⎥ ⎢ ⎢ T⎥ ⎢ ⎣⎢u N ⎦⎥ ⎣u N 1 u N 2 u0 m ⎤ u1m ⎥⎥ ⎥ ⎥ u Nm ⎦ (5.47) Similar to the cost integral, the dynamic equations in problem Gc are approximated as: 2 ⎛ τ −τ 0 ⎞ N N N p(t ) = ⎜ f ⎟ f ( p(t ) , p(t ) , u(t ) , t ) 2 ⎝ ⎠ N (5.48) These equations represent the dynamic constraints on the variables and can be enforced by requiring that they be satisfied at the collocation points. This is the reason that these methods are sometimes called “collocation” methods. Exact satisfaction of Eq. (5.48) at the collocation points translates into the following nonlinear equality constraints: 2 ⎛ τ −τ 0 ⎞ N N N p(tk ) = ⎜ f ⎟ f ( p(tk ) , p(tk ) , u(tk ) , tk ) ⎝ 2 ⎠ N k ∈ {0,1, , N} (5.49) Using the matrix notation defined above, these constraints can be written compactly as: 2 ⎛ τ −τ 0 ⎞ N D P −⎜ f ⎟ F =0 ⎝ 2 ⎠ 2 N 147 (5.50) where D2 represents the square of the differentiation matrix used to obtain the second derivative. The dynamics matrix F N ∈ ( N +1)× n , approximates the dynamics vector field in the space of Nth order polynomials, as defined by: ⎡f0T ⎤ ⎡ f 01 ⎢ T⎥ ⎢ f f N F = ⎢ 1 ⎥ = ⎢ 11 ⎢ ⎥ ⎢ ⎢ T⎥ ⎢ ⎢⎣f N ⎥⎦ ⎣ f N 1 where fi = f ( p(ti ) N , p(ti ) N , u(ti ) N , ti ) ∈ f 02 f12 fN 2 n f0n ⎤ f1n ⎥⎥ ⎥ ⎥ f Nn ⎦ (5.51) . Note that matrix Eq. (5.50) represents ( N + 1) × n nonlinear constraints which are functions of the unknown variables defined by the matrices P N and U N . In the same vein, the integral constraints are collocated, i.e. enforced at the collocation points as follows: τ f −τ 0 2 tk ∫ q ( x( s ) N , u( s ) N , s )ds − z (tk ) ≤ 0 ∀k ∈ {1, 2, , N} (5.52) −1 The integral in the above constraints can be further approximated by using the integration matrix given by Eq. (5.32) and the constraints can be written as: τ f −τ 0 2 N ∑ q ( x(t ) i =0 i N , u(ti ), ti ) ⋅ Wki − z (tk ) ≤ 0 ∀k ∈ {1, , N} (5.53) Using matrix notation these constraints can be compactly written as: ⎛ τ f −τ 0 ⎞ N ⎜ ⎟ WQ − Z ≤ 0 ⎝ 2 ⎠ The matrix Q N ∈ ( N +1)×l is defined as: 148 (5.54) ⎡ qT0 ⎤ ⎡ q01 ⎢ T⎥ ⎢ q q N Q = ⎢ 1 ⎥ = ⎢ 11 ⎢ ⎥ ⎢ ⎢ T⎥ ⎢ ⎣⎢q N ⎦⎥ ⎣ qN 1 where qi = q ( p(ti ) N , p(ti ) N , u(ti ) N , ti ) ∈ q0l ⎤ q1l ⎥⎥ ⎥ ⎥ qNl ⎦ q02 q12 qN 2 l (5.55) and the given matrix Z ∈ ⎡ z (t0 )T ⎤ ⎡ z01 ⎢ ⎥ ⎢ z (t1 )T ⎥ ⎢ z11 ⎢ = Z= ⎢ ⎥ ⎢ ⎢ ⎢ T⎥ ⎣⎢ z (t N ) ⎦⎥ ⎣ z N 1 N ×l is defined as: z0 l ⎤ z1l ⎥⎥ ⎥ ⎥ z Nl ⎦ z02 z12 zN 2 (5.56) Using the above relations, the problem Gc (5.39) is completely discretized and can be written as follows: ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎪ G cN ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩ min J N = h ( p N , v N ,τ f ) + N N τ f −τ 0 P , U ,τ f 2 N ∑ g (p , v k =0 k k , u k , u k ) ⋅ ωk Subject to: 2 ⎛ τ −τ 0 ⎞ N D P −⎜ f ⎟ F =0 ⎝ 2 ⎠ ψ 0 ( p 0 , v 0 ,τ 0 ) = 0 2 Dynamics: Initial Conditions: N (5.57) Terminal Conditions: ψ f ( p N , v N ,τ f ) = 0 Algebraic Constraints: c ( p k , v k , u k , tk ) ≤ 0 ∀k ∈ {0,1, , N} ⎛ τ −τ 0 ⎞ N Integral Constraints: ⎜ f ⎟ WQ − Z ≤ 0 ⎝ 2 ⎠ Note that in the problem G cN , the unknowns are P N ∈ terminal time τ f ∈ ( N +1)× n , UN ∈ ( N +1)×m , and the . Therefore there are a total of ( N + 1)(n + m) + 1 unknown variables. Using this formulation, i.e. direct use of the second derivative in the dynamics instead of the state space representation, there has been a savings of ( N + 1)n variables which is significant for large electromagnetic formations. The above problem is a NLP (Nonlinear Program) that can be solved by standard NLP packages as discussed in Section 5.3. 149 5.5.3. Results For a four-satellite square formation, a set of optimal trajectories was generated for 90° CCW (Counter Clock Wise) rotation using the LPS method with a grid size of N=25. The results are shown in Figure 5.11. These results show the optimal trajectories as well as the control currents and the reaction wheel angular momentum storage required for the maneuver. As can be seen from the figure, the optimal terminal time is around 341 seconds and the reaction wheel angular momenta, which started at zero, return to zero at the terminal state. Moreover, the optimal trajectories are characteristic of EMFF in that the satellites try to approach each other in order to maximize the control authority to execute a minimum time maneuver. ix2 (*), iy2 (circle) 100 100 100 0 0 0 -100 0 200 time sec ix4 (*), iy4 (circle) -200 400 -100 0 200 time sec Hrw1 vs time -200 400 5 5 100 0 0 0 -100 -200 Nms 200 Nms A -200 A 200 -100 -5 -10 0 200 -15 400 200 time sec Hrw2 vs time 400 0 200 400 -5 0 200 -15 400 Hrw4 vs time 0 0 -5 -10 trajectories sat 1 5 y (m) 5 Nms 5 -15 0 -10 Hrw3 vs time Nms ix3 (*), iy3 (circle) 200 A A ix1 (*), iy1 (circle) 200 -5 sat 4 0 sat 2 -10 0 200 time sec 400 -15 -5 0 200 time sec 400 sat 3 -5 0 x (m) 5 Figure 5.11: Optimal trajectory results using the LPS method for a four-satellite formation 90° CCW rotation. 150 The second result is presented for a random ten-satellite formation. For this same formation, the collision-free trajectories were generated using APFM as shown in Figure 4.12. These trajectories were used as the initial starting guess for the LPS method (with N=25). The resulting optimal trajectories are shown in Figure 5.12. The optimal time to execute the maneuver was 134 seconds while the APFM took around 800 seconds to complete the maneuver. For a comparison of the APFM and the Optimal Trajectory Following Method (OTFM) see Section 6.4. 10 sat. random formation optimal trajectories (start=squares) 8 6 4 y (m) 2 0 -2 -4 -6 -8 -10 -5 0 x (m) 5 10 Figure 5.12: A ten-satellite random formation optimal trajectories results using LPS method. 151 Lastly, the optimal trajectories for a two-satellite 90° slew maneuver are presented. The trajectories for this formation were generated using APFM and, for comparison, the results are given in Figure 4.15. The optimal trajectory results for N=55 are shown in Figure 5.13. Note that these trajectories were generated with the reaction wheel angular momentum constraint of 3 Nms. Even with this constraint, the maneuver took 330 seconds as compared to the APFM result of around 560 seconds. rx1 (*), ry1 vs time vx1 (*), vy1 vs time 10 2 0.1 0 0 Nms m m/s 5 -5 Hrw0 (*), Hrw1 vs time 0.2 0 -2 -0.1 0 200 time sec ix1 (*), ix2 vs time -0.2 400 0 200 time sec iy1 (*), iy2 vs time -4 400 200 300 400 time sec traj. sat0 (dashed) and sat1 (*=start) 200 200 100 100 4 0 0 2 0 100 -100 -100 -200 -200 m A A 6 0 -2 0 200 time sec 400 0 200 time sec 400 -4 -2 0 2 m 4 6 8 Figure 5.13: Trajectories generated using LPS method with N=55 for a two-satellite 90° slew maneuver. 5.6. Summary In this chapter the optimal trajectory generation problem for general EM formations was presented. It was shown that the optimal trajectory problem for EMFF is a nonlinear and constrained problem due to the inherent dynamics of EMFF. Different solution methodologies and their inter-relationships were also discussed briefly. Two “direct” 152 solution algorithms, namely the Direct Shooting method and the Legendre Pseudospectral (LPS) method, were presented for EMFF. Results using example EM formations were also presented for both methods. The Direct Shooting method is suitable if the optimal control problem can be parameterized using only a few variables, whereas the LPS method is based on full-transcription of the optimal control problem and is suitable for large, highly constrained and nonlinear problems. The LPS method results in a sparse NLP that can be solved efficiently using existing NLP-solvers such as SNOPT. 153 Chapter 6 Real-Time Implementation of Optimal Trajectories 6.1. Introduction Optimal trajectory generation for nonlinear and constrained systems, such as EMFF, is computationally expensive as discussed in the last chapter. Due to the complexity of the dynamics and constraints, we have to resort to numerical algorithms that generate “openloop” trajectories and control histories that not only take a lot of computational power and time but also cannot be used directly for implementation on actual systems. Even in a perfect simulation in the Matlab environment, the system will not follow these trajectories and diverge, if we apply the pre-computed controls, due to small numerical errors. In a realistic environment, there are always modeling errors and external unmodelled disturbances. Therefore, a “closed-loop” scheme is needed in order to actually implement these optimal trajectories on real-world systems. The purpose of this chapter is to provide two practical methods that can be used to implement the optimal trajectories for nonlinear and constrained systems in real time with relatively low computational burden. 6.2. Adaptive Trajectory Following Formulation A simple method with low computational burden is to use the adaptive trajectory following formulation for EMFF discussed in Chapter 3. Since time optimal trajectories 155 for EMFF result in controls operating near or at constraint boundaries, trajectory following control laws, as developed in Chapter 3, cannot be used directly. This is apparent since once the controls are saturated at the boundaries, it can change only in one direction and hence only provide the ability to steer the system by reduction in controls when faced with external disturbances and uncertainties in the model. The full control authority can be recovered by the method of “constraint tightening,” in which the optimal trajectories are computed offline by reducing the constraint margins. This reduction in constraint margins can be done according to the size of unknown but bounded disturbances as discussed below. 6.2.1. An Upper Bound for Constraint Tightening for Bounded Disturbances Let the model of the system used for the computation of the optimal trajectories be given by: xm = f ( xm , um , t ;θ 0 ) xm ∈ X ⊂ where fm : n × m × → n is n the state vector, (6.1) um ∈ U ⊂ m is control vector, is the vector field representing the modeled dynamics, and θ 0 is the vector of constant system parameters. Note that the subscript m is added to emphasize the fact that these dynamics represent the modeled dynamics. The actual system dynamics can be represented as: x = f ( x, u, t ;θ ) + w(t ) where x(t ) is the actual state vector, u (t ) is the actual control vector, w(t ) : (6.2) → n is the unknown but bounded disturbance vector, and θ is the vector of actual constant 156 system parameters. The error between the actual and the modeled state vector can be written as: t t 0 0 x(t ) − xm (t ) = ∫ [ f ( x, u,τ ;θ ) − f ( xm , um ,τ ;θ 0 ) ] dτ + ∫ w(τ ) dτ (6.3) Defining δ x(t ) = x(t ) − xm (t ) and assuming that the function f (⋅) is Lipschitz continuous [30] with respect to all of its arguments, the above relation can be used to determine an upper bound on the state error as follows: t t 0 0 δ x(t ) ≤ ∫ ⎡⎣ L fx δ x(t ) + L fu u (t ) − um (t ) + L f θ θ − θ 0 ⎤⎦ dτ + ∫ w(τ ) dτ (6.4) where i represent the appropriate norm, such as the infinity-norm, and L fx , L fu , and L f θ are the Lipschitz constants of the function f (⋅) for the arguments x(t ) , u (t ) , and θ , respectively, over their appropriate domains. The adaptive trajectory following control law, developed in Chapter 3, can be written as: δ u (t ) = u (t ) − um (t ) = h ( x(t ) − xm (t ) ) where h : n → m (6.5) is the control law (Eq. (3.11)) that maps the reference trajectory xm (t ) and current state x(t ) to the control inputs required to drive the error δ x(t ) asymptotically towards zero. Under the assumption that this map is Lipschitz continuous, a bound on Eq. (6.5) can be written as: δ u (t ) ≤ Lh δ x(t ) (6.6) Using this relation, the inequality (6.4) can be written as: t δ x(t ) ≤ ( L fx + L fu Lh ) ∫ δ x(t ) dτ + L f θ Θt + Wt 0 157 (6.7) where w(t ) ∞ = W and δθ ∞ = Θ . Using the Gronwell-Bellman Inequality [30], the above relation can be written as: δ x(t ) ≤ ( L f θ Θ + W ) t exp ⎡⎣( L fx + L fu Lh ) t ⎤⎦ (6.8) Using relations (6.6) and (6.8) the upper bound on the control variations around the nominal values can be written as: δ u (t ) ≤ Lh ( L f θ Θ + W ) t exp ⎡⎣( L fx + L fu Lh ) t ⎤⎦ (6.9) Although the bound given by the above inequality is simply an upper bound and tighter bounds may be possible to estimate, it still provides some useful insights into the constraint-tightening approach. It clearly shows that the control bound needs to increase with time where the effect due to unknown disturbances and parameters will be greatest. Thus, an effective way of tightening the constraints is to taper the control boundaries for increasing time, rather than just lowering the bounds for all times. These variable control constraints can be easily incorporated into the Legendre Pseudospectral method discussed in Chapter 5. Another aspect of the size of these bounds is their dependence on the “smoothness” of the dynamics and control laws, as captured by various Lipschitz constants. Smoother dynamics result in lower values of the Lipschitz constants and consequently lower variation in the control signals. 6.2.2. Trajectory Following Algorithm Description The algorithm for trajectory following using the nonlinear adaptive control laws developed in Chapter 3 can be described as follows: • Solve the optimal control problem for the formation, e.g. OTRPC (5.12) that generates C1-smooth trajectories, with the following modifications: 158 ¾ Constraint-tightening according to the bounds of unknown disturbances and parameter variations (e.g. using (6.9)). • The optimal trajectory, along with the control history is used as the reference trajectory for the trajectory following control law developed in Chapter 3 with the following modifications: ¾ The constraints are relaxed to their original values. ¾ The dipole equations are solved such that the solution remains near the optimal control values computed in the open loop problem. Thus, instead of the AMMOP (4.50), the following optimization problem is solved during the computation of the dipole vector: N { min ∑ Tim (tk ) μ ( tk ) i =1 Subject to: T W f m (p, μ) = a des N ∑mf i =1 } + μTi (tk ) Wmi μ i (tk ) + [μ i (tk ) − μ o (tk ) ] Wdi [μ i (tk ) − μ o (tk ) ] i mi (6.10) (p, μ) = 0 where μ o (t ) is the optimal control history that is computed offline. This cost function ensures that the control values remain near the optimal control history and the formation remains on the optimal trajectory. It should be noted that, due to constraint tightening, the resulting trajectories are somewhat sub-optimal. But constraint tightening itself results in robustness of the algorithm in the face of uncertainty. The constraint-tightening approach has been successfully used in the linear MPC (Model Predictive Control) to enhance robustness [67], [68]. A detailed theoretical discussion of effective ways of constraint tightening, for 159 nonlinear and constrained systems, is an open problem and beyond the scope of this thesis. The fact that the algorithm presented above is practical and indeed robust is demonstrated by the simulation results presented in the following section. 6.2.3. Simulation Results The 6DOF nonlinear simulation developed for LEO control demonstration was modified to test the algorithm described above. The offline optimal trajectory was generated, with a simple constant maximum current of 100 A in both the x- and y-coils, for a simple twosatellite reconfiguration problem in 2D. The trajectory following algorithm results are shown in Figure 6.1 and Figure 6.2. The maximum current bound was relaxed to 110 A. In these results, the exact Biot-Savart model [17] for the computation of the forces and torques was used to simulate the formation while the far-field model was used for the generation of the offline optimal trajectories as well as in the trajectory following controller. Moreover, process noise was simulated as a random walk signal in the xdirection only, while sensor noise was also injected as shown in Figure 6.2. A computational delay of 0.2 seconds was also used in the simulation. Due to the presence of a disturbance force along the x-direction, the whole formation was shifted to the left as shown in the trajecotry-plot in Figure 6.2. Nevertheless, the relative distance error between the leader and follower satellites remains relatively small as shown in Figure 6.1, thus showing the robustness of the algorithm to both disturbances and model uncertainty. Also, note that the terminal values of the reaction wheel angular momenta are not zero, as shown in Figure 6.1, although they were constrained to be zero for the optimal trajectory. This is expected since the 160 formation is subject to external disturbances with nonzero net forces and also due to the presence of measurement noise. x - pdx y - pdy 0 0 -0.05 m 0.05 m 0.05 0 200 -0.05 400 -3 x 10xdot - pdxdot 5 0 -5 0 200 0 0 x 10 0 200 Amp Amp 200 time sec Amp -0.1 0 400 400 0 0 0 200 400 -5 5 0 0 0 200 time sec 400 0 200 400 hrwz Nms (follower) 200 -200 200 hrwz Nms (leader) Iy A (leader) Amp 0 400 5 Ix A (leader) 0 200 alpha error (deg) (follower) 0.1 200 -200 400 200 -200 0 Iy A (follower) 100 200 pdxdd -0.2 0 Ix A (follower) 0 400 0 -5 400 200 0 200 -3 m/s2 m/s 5 alpha error (deg) (leader) 0.2 400 -5 0 200 time sec 400 Figure 6.1: Trajectory following results for a two-satellite formation using exact BiotSavart force-torque computation for the simulated system model, control and error signals. 161 -20 0 200 time sec -20 0 -3 5 x 10 200 400 time sec sx for sat 1 (follower) N 0 200 time sec 0 -0.02 0 200 time sec 0 200 time sec 400 Measurement error ry1 0.02 0 -0.02 0 200 time sec 400 6 100 x 10 200 300 time sec sy for sat 1 (follower) 4 400 y (m) 0 -3 5 x-dist. (f) leader (thick) and follower trajs. 0 -5 400 x 10 0 -5 400 Measurement error rx1 0.02 m m y w.r.t. leader and pdy (r dotted) 20 0 -3 5 0 -5 400 -3 x 10 x-dist. (l) m 0 5 N m x w.r.t. leader and pdx (r dotted) 20 2 0 0 -5 -2 0 100 200 time sec 300 400 -4 -2 0 2 x (m) 4 6 8 Figure 6.2: Trajectory following results for a two-satellite formation using exact BiotSavart force-torque computation for the simulated system model. 6.3. Receding Horizon Control Formulation In receding horizon (RH) control, also known as Model Predictive Control (MPC), an optimal control problem over a finite horizon t H is solved and the resulting optimal control is applied over a control horizon tC t H . This process is repeated after every tC seconds. The reasons for using a finite horizon instead of solving the full trajectory planning problem are two-fold. First, the environment itself might be dynamic or 162 uncertain and second, the computational complexity can be prohibitively high for the full trajectory planning problem in real-time. Usually a cost-to-go function is used to generate the cost beyond the finite horizon t H and, at the same time, this cost-to-go function also generates the target or terminal point for the finite horizon optimal control problem. See References [69]-[72] for further background. The advantages of using the RH-formulation are many and varied since it tries to solve a real-world problem rather than a theoretical one such as LQR (Linear Quadratic Regulator). This formulation can explicitly take into account all the constraints present in the system. Moreover, it can handle dynamic changes in the environment, and at the same time, generate fault tolerant algorithms to accommodate component failures [73]. These advantages come at the cost of the computational complexity of the algorithm, which depends on both the finite horizon optimal control problem complexity and that of the cost-to-go function. The RH control formulation has been successfully used for the real-time path planning problem for UAVs by formulating the finite horizon optimal control problem as a Mixed Integer Linear Program (MILP) and using the Dijkstra’s Algorithm to generate a cost-to-go function [68], [74]. For EMFF, which belongs to the class of nonlinear and constrained systems, both the finite horizon optimal control problem and the cost-to-go function are computationally complex. In the following section, an RH formulation, based on a simple cost-to-go function using the offline computed optimal trajectory, is presented. 163 6.3.1. RH Formulation with Optimal Cost-to-Go Function In this formulation the full optimal control problem for the electromagnetic formation, OTRPC (5.12), is solved offline and the resulting C1-smooth trajectory and control are used in the “optimal cost-to-go” function. Using this function, the RH-formulation is shown in the form of a block-diagram in Figure 6.3. Optimal Cost-to-Go External Disturbances Optimal Trajectory x0, u0 RH Controller d u x EMFF Dynamics Δ + x = Full state u = Control Inputs x0, u0 = Open loop optimal trajectory d = Unknown external perturbations Δ = Un-modeled dynamics Sensor/ Estimation Error Figure 6.3: Receding Horizon formulation using optimal cost-to-go function. The RH-controller shown in Figure 6.3 takes the terminal conditions from the optimal cost-to-go function and solves the following optimal control problem online: 164 ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎪ OPRH ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩ min J = {x(t f ) − x 0 (t0 + t H )} H {x(t f ) − x 0 (t0 + t H )} + ∫ 1 + δ μ - μ 0 dτ tf T t0 μ ,t f Subject to: Dynamics: Initial Conditions: Control Constraints: x = f ( x, μ ) x0 = x(t0 ) = [x10 x 20 −μi max < μi (t ) < μ i max x N 0 ]T i = 1...N , t ∈ [t0 , t f ] (6.11) Collision Avoidance: min dij (t ) > Dmin ∀i ≠ j , i, j = 1...N , t ∈ [t0 , t f ] RW Saturation: C.M. Constraint: h iRW (t ) < H i max N N i =1 i =1 i = 1...N , t ∈ [t0 , t f ] ∑ mi xi 0 = ∑ mi xif where t0 is the current time, H > 0 is a symmetric weighting matrix for the terminal conditions, δ > 0 is a weighting constant, x0 (t ) is the optimal trajectory, μ 0 (t ) is the optimal control vector that is computed offline and the rest of the symbols are as defined in Chapter 5 for OTRPC (5.12). The purpose of adding the δ μ − μ 0 term in the cost integral is to keep the control values near the optimal control. Note that the Optimal Problem for Receding Horizon (OPRH) is formulated such that it can be solved in realtime using the Legendre Pseudospectral method discussed in Chapter 5. The real-time solution is achieved by the following considerations: • A short value for t H ∼ 10sec is used which results in a smoother problem since, during this short interval, the trajectory does not change much. Consequently a smoother problem results in quicker convergence of the underlying PS (Pseudospectral) approximation (see Theorem 1.1 in [75]). • The terminal conditions are included in the cost integral as a “soft constraint.” 165 • Control is computed over a coarse grid ( N ≤ 10 ). This is possible since over a short horizon a smoother trajectory can be approximated by a lower order polynomial. • Using relaxed error tolerances in the solution of the NLP. 6.3.2. Simulation Results In order to test the algorithm a simulation was constructed in Matlab to implement the RH-formulation for EMFF. The formation from Section 6.3.2 was used to test the performance of the algorithm. The exact Biot-Savart law was used to compute the force and torque in the nonlinear model while the far-field model was used to generate the offline optimal trajectory and in the RH controller. A computation delay of 0.2 sec was assumed in the simulation. A process noise was added in the simulation as a random walk signal in the x-direction only, while sensor noise was added to both the x- and y-position measurements. In the finite horizon control formulation (6.11) simulation, the reaction wheel saturation limit was increased from a value of 3 Nms (that was used in the offline solution of the optimal control problem) to 3.5 Nms to account for external disturbances. Also the control bounds were relaxed to 110A, from a value of 100A used in the generation of offline optimal trajectories. The results are shown in Figure 6.4. These results highlight the robustness of the algorithm to modeling errors and external disturbances. Figure 6.5 shows the actual computation times required to run the simulation on a 3.0GHz desktop computer. Although the simulation was built in Matlab using the fmincon function, during most of the time the computation time is within 1sec 166 showing that using better coding and better NLP solvers (such as SNOPT) the algorithm can be executed in real-time. 200 x error -10 400 0 0.1 0 0 0 200 400 ix1 and ix10 (dotted) Amp 0 -200 0 200 400 iy1 and iy10 (dotted) -200 Amp 0 200 time sec 400 -1 0 200 400 HRW sat 1 (blue), sat 2 (g dash) 5 400 0 -0.1 -5 0 6 -200 4 0 200 400 iy2 and iy20 (dotted) 200 200 0 200 y error 0 200 400 ix2 and ix20 (dotted) 200 200 Amp 0 0.2 -0.2 200 leader (sat 1) 2 0 0 200 time sec 400 -2 0 2 4 x (m) 2.5 2 1.5 1 0.5 0 0 50 100 400 -2 0 -200 0 Figure 6.4: RH-formulation simulation results. Computation Time sec Amp 0 Nms 0 alpha0 and alpha1 (red) 1 y (m) m -20 m 0 y w.r.t. leader and pdy (r) 10 m m x w.r.t. leader and pdx (r) 20 150 200 time sec 250 300 350 Figure 6.5: RH-formulation computation time during simulation. 167 6 It should be noted that the robustness to external disturbances is accomplished by the constraint-tightening approach, also used in the adaptive trajectory following algorithm. Comparing the RH-formulation results with those of the adaptive trajectory following algorithm, it can be seen that the position errors are higher for the RHformulation. Nevertheless both algorithms exhibit robustness to external disturbances and unmodelled dynamics. 6.3.3. Limitations and Possible Extensions Using the optimal cost-to-go function in the RH-formulation has the limitation that it requires offline computation of the computationally complex optimal control problem. In addition, this algorithm is not suitable for a dynamic environment; although this is not a limitation for EMFF since the space environment is well defined. Nevertheless, this algorithm cannot be extended to include fault tolerance. A suitable cost-to-go function for the electromagnetic formation can be based on the APFM (Artificial Potential Function Method) described in Chapter 4. The Lyapunov Function, given by Eq. (4.19), can be used as the cost-to-go function. In Chapter 4 it was shown that this function always reconfigures the electromagnetic formation asymptotically, hence the cost-to-go function using this method remains feasible during the maneuver. Note that APFM generates not only feasible trajectories, it also computes the desired control signals to execute these trajectories. Hence, the finite horizon optimal problem essentially optimizes this feasible solution. The limitation of this approach is that the complexity of the APFM increases with increasing number of satellites in the formation, as shown in Figure 4.13. 168 6.4. Comparison of APFM and Optimal Trajectory Following Method In this thesis two methods of motion planning have been presented. The Artificial Potential Function Method (APFM) generates collision-free trajectories for EM formations as shown in Chapter 4. Chapters 5 and 6 present algorithms for generating and following optimal trajectories for EMFF. It was mentioned earlier that APFM results in suboptimal trajectories, although using Potential Function (PF) shaping (discussed in Section 4.4) results in much improved results. The purpose of this section is to compare the two methods in both the performance and computational complexity of the algorithms. In order to compare the two algorithms, rest-to-rest maneuver trajectories were generated for random EM formations in 2D using both of the algorithms. The initial and terminal conditions of these random formations were generated such that the distance between any two satellites in the formation was greater than 3 m. The APFM trajectories were used as the starting guess for the OTFM (Optimal Trajectory Following Method). The optimal trajectories were generated using the Legendre Pseudospectral Method with a grid size of N = 13. The Matlab constrained optimization function fmincon was used with a tolerance of 1e-4 for the variables and 1e-2 for the constraints. These low values of the tolerances were used so that the optimization would terminate in a reasonable time. These results are shown in Figure 6.6. 169 Avegrage (over 5) rest-to-rest Maneuver times 80 APFM w/o PF shaping APFM with PF shaping Optimal Times minutes 60 40 20 0 2 3 4 5 No. of satellites Avegrage (over 5) rest-to-rest Maneuver Computation times minutes 60 APFM w/o PF shaping APFM with PF shaping Optimal Times 40 20 0 2 3 4 No. of satellites 5 Figure 6.6: Comparison of APFM and OTFM trajectories. Figure 6.6 shows clearly that using PF shaping results in considerable improvements in the performance of the APFM algorithm. As compared to the optimal trajectories, the APFM trajectories take approximately 2 to 4 times more time to complete the maneuver. Although in the above results the parameters of the PF shaping algorithm can be further fine-tuned to decrease the maneuver times (since these parameters need to be tuned for each formation and it takes considerable time so rather conservative values of the parameters were used in the above results). Nevertheless, these results highlight the important fact that the PF shaping algorithm is a promising technique that can be used to generate feasible and practical trajectories for EM formations. 170 It can be seen from Figure 6.6 that the APFM runs in real time to generate the collision-free trajectories for the EM formations and the complexity of the algorithm increases as O(n) where n is the number of satellites in the formation. Although in the OTFM the open loop optimal trajectories are computed offline, the complexity of the OTFM open loop trajectory algorithm also increases as O(n). In the OTFM, as discussed earlier, a finite horizon optimal control problem is solved at each time step whose computational complexity is not shown in Figure 6.6. From a practical point of view, implementing OTFM in real-time requires much more computational power as compared to the APFM, since APFM generates control inputs based on a closed-form Lyapunov function and the solution of the dipole equations. It is the latter computation (i.e., the dipole equation solution) that increases the computational complexity of the APFM algorithm. Nevertheless, the complexity of the dipole equation solution algorithm is much lower as compared to the online optimization problem of the OTFM. Another important aspect for EM formation reconfiguration is the angular momentum management during the maneuver. APFM does not allow any direct control over the reaction wheel angular momentum during the maneuver (although simulations can be used to ensure that the RWs do not saturate). On the other hand, OTFM allows complete control over the RW saturation, and the maximum angular momentum that a RW can store can be specified in the computation of the trajectories. From the above discussion it is clear that OTFM is the most general method for trajectory generation for nonlinear and constrained systems, such as EMFF, but it is much more computationally expensive to implement as compared to the APFM. This comparison is summarized in Table 6-1. 171 Table 6-1: Comparison summary for OTFM and APFM Comparison Measure OTFM APFM Computational Complexity Very High Low Maneuver Time Optimality Near Optimal Sub-optimal (~ factor of 3) Reaction Wheel Saturation Full control No control 6.5. Summary In this chapter two algorithms for following optimal trajectories were presented. One algorithm is based on the nonlinear adaptive trajectory following algorithm presented in Chapter 3 for LEO EM formation control. This algorithm models the unknown external disturbances and model uncertainties as slowly varying parameters and has very low computational burden. The second algorithm is based on the receding horizon control formulation. This formulation solves a finite horizon optimal control problem at each control time step and applies the computed control values until the next control step, at which point the solution of the finite horizon optimal control problem is repeated. The robustness in the RH-formulation is accomplished by tightening the constraints in the solution of the offline optimal control problem. Thus this chapter, along with Chapter 5, presents a complete method, called OTFM (Optimal Trajectory Following Method), of implementing optimal trajectories for nonlinear and constrained systems with specific application to EMFF. This method is also compared to the motion planning algorithm using APFM (Artificial Potential Function Method) that was presented in Chapter 4. This comparison reveals that the APFM, with Potential Function Shaping (discussed in 172 Section 4.4) is a promising technique that can be used to generate collision-free trajectories, which are sub-optimal by a factor of around 2, for EM formations at a low computational burden as compared to OTFM. 173 Chapter 7 Conclusions 7.1. Summary and Contributions Electromagnetic formation Flying (EMFF) is a novel concept that uses high temperature superconductors to create magnetic dipoles in order to generate forces and torques between the satellites in a formation. Using EMFF, all the relative translational degrees of freedom can be controlled without expenditure of any consumables and consequently the mission lifetime becomes independent of the fuel available on board. This comes at the cost of increased complexity in the dynamics and control problem associated with the formation flying. The key objectives of this thesis were to show that the EMFF is a feasible concept from the dynamics and control point of view, and to develop practical algorithms that can be implemented in real-time for the control of general electromagnetic formations. In the following paragraphs, the chapter-wise summary and key contributions of this thesis are presented: • Chapter 1 introduces the concept of EMFF and shows that EMFF has distinct advantages over conventional thruster based propulsion for certain formations in LEO. 175 • Chapter 2 derives the dynamic models necessary to simulate and control EM formations in both LEO and deep-space. Lagrangian formulation is used in the derivation of the nonlinear translational models that includes the J2 perturbations as well and allows easy additions of higher order terms. The key contribution of this chapter is that it presents 6-DOF models suitable for simulation and control design of general EM formation both in LEO and deep-space. • Chapter 3 presents a general control framework in which control laws for specific missions can be designed. Using this framework, 6-DOF adaptive trajectory following control laws for general EM formations have been derived. These control laws account for the model uncertainty due to the far-field approximation and the uncertainty in the Earth’s B-field by using slowly varying parameters. The key contribution of this chapter is that it presents a dipole polarity switching control law for the management of angular momentum in LEO for general EM formations. Also using 6DOF nonlinear simulations, the feasibility of these control laws is shown for LEO formations. • Chapter 4 presents the Artificial Potential Function Method (APFM) with specific application to EMFF as a complete algorithm for motion planning of general EM Formations. The key contribution of Chapter 4 is that APFM and Lyapunov theory are used to generate a trajectory planning algorithm that can be used to generate collision-free trajectories for general EM formations. This algorithm is computationally efficient and can be used to generate trajectories for moderately sized (N~10) EM formations in real time. This chapter also presents a new 176 method of solving the dipole equations, namely dynamic inversion through optimization for EMFF. • Chapter 5 presents optimal trajectory generation algorithms for general EM formations using two direct solution algorithms, namely Direct Shooting and the Legendre Pseudospectral (LPS) method. The key contribution of Chapter 5 is that it gives an efficient formulation of the optimal control problem using the LPS method for EMFF by exploiting the Newtonian dynamics formulation instead of a state-space representation. • Chapter 6 presents two methods for following optimal trajectories for EMFF. The first method uses the adaptive control laws developed in Chapter 3. The second method is based on the Receding Horizon (RH) formulation. The key contribution of this chapter is that it formulates the RH problem for EMFF such that it can be solved in real time. Thus Chapter 5 and 6 present practical algorithms for implementing optimal trajectories in real-time for nonlinear and constrained systems. Moreover Chapter 6 also compares the APFM and Optimal Trajectory Following Method (OTFM) for EMFF and the pros and cons of both methods are highlighted with application to nonlinear and constrained systems. 7.2. Future Directions For the generation and implementation of feasible trajectories for the class of nonlinear and constrained systems, this thesis presents two methods, namely APFM (Chapter 4) and the Optimal Trajectory Following Method (OTFM) (Chapter 5 & 6) with their comparison given in Chapter 6. One possible area of research is to reduce the 177 convergence time of the APFM algorithm so that the resulting trajectories are nearer to the optimal trajectories. Some of the ideas to achieve this objective are presented in Chapter 4 (i.e., the Potential Function Shaping method). Second, in the RH-formulation the cost-to-go function was based on optimal trajectories; and was computed offline. Using this “optimal cost-to-go function,” results in a RH-formulation that is less appealing, especially from real-time fault tolerance point-of-view. A possible better formulation can be to use the APFM Lyapunov function as the cost-to-go function in the RH-formulation. This framework could give rise to anytime motion planning [78] for general EM Formations. In the anytime motion planning algorithm, a feasible trajectory, with some minimal desired properties, is generated quickly and made available to the system; while in the remaining time this trajectory is optimized to improve performance. To have real world demonstration of the workings of the control laws developed in this thesis, these laws need to be tested on the EMFF testbed on a flat floor. Both the optimal trajectories and the APFM can be tested on the EMFF testbed by integrating the existing code with the SNOPT software for embedding the controller on the testbed DSP. 178 Appendix A: Matlab Tools for Simulation of Electromagnetic Formations A nonlinear simulation for a general N-satellite electromagnetic formation has been prepared in the Matlab and Simulink environment (see Figure A.1). This simulation is used to test the nonlinear control laws for the formation. The different functions and blocks used in the simulation are described in the following sections. Nveh3dFT: A Matlab mex function, written in C-language that generates the force and torque on each Electromagnetic Satellite in a general N-satellite formation. This function takes the current state (position and orientation) and control inputs (current in each coil) of each satellite in the formation. This function implements both the far-field model (much faster) and the exact model using the Biot and Savart Law. The user has the option to select either of the models in force and torque computations. This function assumes that each satellite has three orthogonal circular coils and different coil parameters such as area and number of turns are supplied by the user. This function can be used in any general dynamic simulation of general electromagnetic formations. 3D Dynamics S-Function: This Simulink S-Function implements the general nonlinear dynamics for an electromagnetic formation in deep-space as well as for Low Earth Orbit (LEO) 179 operations. The dynamics include the translational as well as attitude dynamics. The deep space translational dynamics are simply double integrator dynamics with Electromagnetic actuation while the LEO dynamics are in the ECI (Earth Centered Inertial) reference frame and also include the J2-perturbations. The attitude dynamics are based on Euler equations and use quaternions and include the gyro-stiffening effect as well. In these dynamics each satellite is assumed to have three orthogonal reaction wheels aligned with the principle axes of the satellite for simplicity. This function takes the control inputs and the process noise perturbations as inputs and generates the state vector of the whole formation. This function also accounts for the disturbance torque on each satellite due to the Earth’s magnetic field and currently a simple dipole based Earth’s magnetic field model is being used for simplicity (which can be enhanced readily using the available WMM or IGRF codes). Controller S-Function: In order to test the viability of using the electromagnetic formation concept in LEO, a nonlinear adaptive control scheme has been developed and implemented in the form of a Simulink S-function to control an N-satellite electromagnetic formation in LEO. This controller implements both the translational and attitude control for a general N-satellite formation in a circular orbit around Earth. This function takes the current formation state and desired trajectory as inputs and generates the coil currents and reaction wheel torques as outputs. 180 pf x xt pf y To Workspace6 pf z inputs xt ptx pty 3D NL Model ptz Process Noise Model u x To Workspace5 y z q1 Saturation Ix q2 q3 Saturation1 Iy q4 xd Saturation2 yd zd Iz Tx contLEO Ty em w1 w2 w3 omega1 omega2 sensors Sensors Model omega3 the1 time Clock the2 Tz To Workspace the3 pdx pdy pdz pdxd ahat pdy d To Workspace2 current time pdzd pdxdd pdy dd st pdzdd To Workspace1 S-Function Desired Trajectory Generator Figure A.1: Nonlinear 3D Simulink simulation for electromagnetic formation. 181 Appendix B: Precision Formation Control using EMFF A relevant question about formation flying is the ability of the control system to maintain the formation within a narrow tolerance during an observational mode of the system. Needless to say, this question is more pertinent for the nascent and innovative concepts like EMFF. In this section we will show that the EMFF concept does not have any inherent limitation, from a theoretical point of view, and can meet the precision FF requirements. This will be shown by construction for the Gen-X mission (see Reference [42] for an introduction to the Gen-X mission). B.1 Gen-X Precision FF Requirements For the Gen-X mission the pointing accuracy drives the precision formation flying tolerances. The position control tolerances between the optics and detector are assumed to be 0.1 to 0.3 mm in separation and several mm in the plane perpendicular to the optical axis. It is pointed out that this separation can be maintained by using staged control if the formation is not capable of providing the necessary precision. Overall formation pointing accuracy requirements can be stated as: • • • • • Boresight pointing accuracy Boresight pointing knowledge Drift or jitter Detector position Error along boresight Detector position Error normal to boresight 183 < 1 arc-second < 0.5 arc-second < 1 arc-second/minute ~ 0.1 mm ~ 1 mm B.2 Problem Formulation It is assumed that the primary module is pointed to the desired orientation, satisfying the boresight pointing requirements, using the primary reaction wheels and other necessary instruments. The task of the formation control subsystem is to keep the detector module within the specified tolerances. The detector formation flying for the Gen-X mission will be studied for the following scenario: 1) The spacecrafts are not slewing and are in the observation mode. 2) The control system will be formed as a regulator to maintain the formation within the given error bounds. 3) Only 3-DOF (Degrees of Freedom) control is considered in this study for simplicity. This essentially assumes that the motion of the system is restricted to the slewing plane and system is infinitely stiff to disturbances normal to the slewing plane. This can be easily extended to full 6-DOF control setup by designing the controller for each axis independently as the linearized dynamics are decoupled for EMFF in the case of 3-orthogonal superconducting coils on either of the modules. 4) For the sake of this analysis the primary is assumed to have one coil and it is maintained at a specified constant current for simplification of the control law. The primary module also has two orthogonal reaction wheels to maintain its attitude. 5) The detector module has two orthogonal coils and two orthogonal reaction wheels for control. 6) System model/parameters are assumed to be known accurately. 184 7) The measurement bandwidth is much higher than the required closed loop bandwidth of the system. This essentially means that we can approximate the measurement instruments as having a unity transfer function in the range of the frequencies of interest. The origin of the global coordinate system is assumed to be at the c.m. of the system. The detector module is placed at a focal length distance from the primary module along the xaxis as shown in Figure B.1. As described earlier, we have separated the formation flying problem from the telescope pointing problem and we will only consider the former problem, i.e., the problem of keeping the detector module within tolerances for position and attitude given the location and orientation of the primary. Thus, in this formulation the formation may drift under external force disturbances but the relative orientation and distance between the primary and detector modules is to be kept within bounds so that the telescope keeps on pointing to the target within the boresight pointing accuracy and jitter tolerance. y x detector primary Figure B.1: Coordinate setup for control. 185 B.3 Regulator Setup The regulator setup for the problem is shown in Figure B.2. In this setup, as described earlier, it is assumed that the sensors have enough bandwidth such that the sensor dynamics can be neglected. The plant P is assumed to be linearized at the nominal operating point, F is the controller, e is the vector of errors, d are the disturbances referred to the actuator input, y is the vector of outputs and v is the sensor noise vector. Weighting W1 and W2 are shaping functions that are used to weight the error as a function of frequency, i.e., we use these in such a way as to minimize the error in the desired range of frequencies rather than the whole spectrum which would be wasteful. Costs z1 and z2 are used in the optimization setup to select the appropriate controller that minimizes these costs. This setup can be represented in a canonical setup for state-space design as shown in Figure B.3. + _ d 0 + F + + W1 e y P _ W2 z2 + v + Figure B.2: Block diagram for the regulator setup. 186 z1 z w P u y F Figure B.3: Standard State-Space setup for the regulator problem. The plant can be described in the standard form by the following set of equations: x = Ax + B1w + B 2u z = C1 x + D11 w + D12u (B.1) y = C 2 x + D 21 w + D 22u In this problem setup we want to minimize some form of norm from the noise vector w to the cost vector z, with the constraint that the closed loop system has stable dynamics and acceptable transient characteristics. A well known solution to this problem is the H∞ controller design based on the minimization of the H∞ norm from w to z, i.e., Twz ∞ <γ (B.2) where γ is a positive number that we try to minimize. To see that this is indeed a good way to design the controller for this problem, we can write the error signal as: e = − SPd − ( I − S ) v where S is the sensitivity function defined as: 187 (B.3) S = ( I + PF ) −1 (B.4) Clearly to minimize the error due to disturbances, the sensitivity matrix should be “small” in some sense. Thus, the sensitivity matrix would be small if the smallest singular value of the loop gain matrix PF is much greater than unity or: σ ( PF ) >> 1 (B.5) Since the noise vector affects the error via the complementary sensitivity matrix making S “small” would result in direct injection of the sensor noise to the error signal. This is a fundamental tradeoff of the feedback control. Therefore to have good disturbance rejection one must have a very low sensor noise in the frequency range of interest. At higher frequencies the sensitivity matrix is almost unity thus the high frequency sensor noise would not have a significant effect on the error dynamics. From Figure B.2, we can write Eq. (B.2) in terms of the sensitivity matrix as follows: W1 ( I − S )⎤ ⎡ − W1 S ⎢− W ( I − S ) − W SP ⎥ 2 2 ⎣ ⎦ <γ (B.6) ∞ and minimizing the H∞ norm of the matrix Twz would make sure that each of the submatrix transfer functions in Twz is bounded from above by Twz ∞ , therefore the weighted sensitivity matrix is minimized as desired. Weighting matrices W1 and W2 are selected in an iterative fashion until the requirements on the sensitivity matrix are satisfied. 188 B.4 Plant Dynamics For the Gen-x formation flying using EMFF the relative dynamics of the detector module in the slew plane with respect to the coordinates fixed at the system c.m. can be described by the following equations: ⎡ Fdpx ⎤ ⎥ ⎢ M eq ⎥ ⎢ x ⎡ d⎤ ⎢ y ⎥ = ⎢ Fdpy ⎥ + disturbances ⎥ ⎢ d⎥ ⎢ M eq ⎥ ⎢⎣α d ⎥⎦ ⎢ ⎢ Tdp − Tdrw ⎥ ⎥ ⎢ ⎦ ⎣ Id (B.7) where: xd = Position of the detector along x-axis, yd = Position of the detector along y-axis, αd = Angle of the detector module body fixed x-axis w.r.t. global x-axis, Fdpx = Force on the detector due to primary along x-axis, Fdpy = Force on the detector due to primary along y-axis, Tdp = Torque on the detector due to primary about z-axis, Tdrw = Torque on the detector due to the detector reaction wheel, Meq = Equivalent mass of the primary-detector system = M DM P , MD + MP Id = Moment of inertia of detector about z-axis. Using the far field approximations for the magnetic forces and torque, the linearized equations of motion can be written as: 189 ⎡ xd ⎤ ⎡ 0 ⎢ x ⎥ ⎢0 ⎢ d⎥ ⎢ d ⎢ yd ⎥ ⎢ 0 ⎢ ⎥= dt ⎢ yd ⎥ ⎢⎢ 0 ⎢α d ⎥ ⎢ 0 ⎢ ⎥ ⎢ ⎣⎢α d ⎦⎥ ⎣ 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ⎡ ⎢ −3 μ μ 0 px0 ⎢ 0 ⎤ ⎡ xd ⎤ ⎢ 2π M eq d 04 ⎢ ⎥ ⎥ x 0 ⎢ ⎥⎢ d ⎥ ⎢ 0 0 ⎥ ⎢ yd ⎥ ⎢ ⎥⎢y ⎥+ ⎢ 0 0 d ⎥⎢ ⎥ ⎢ 1 ⎥ ⎢α d ⎥ ⎢ 0 ⎥⎢ ⎥ 0 ⎦ ⎣α d ⎦ ⎢ ⎢ 0 ⎢ ⎣ 0⎤ 0 0 0 3μ 0 μ px0 4π M eq d 4 0 0 − μ 0 μ px0 2π I d d 03 ⎡ 0 ⎥ ⎢ 1 ⎢ 0⎥ ⎥ ⎢ M eq ⎥ ⎢ 0 ⎥ ⎡ Δμ dx ⎤ ⎢ 0 ⎥ ⎢ Δμ ⎥ + ⎢ dy ⎥ ⎢ 0 0 ⎥⎢ ⎢ T ⎥ ⎣ drw ⎥⎦ ⎢ ⎥ ⎢ 0 0⎥ ⎢ ⎢ 1⎥ ⎥ ⎢ 0 Id ⎦ ⎣ 0 0⎤ 0 0⎥ 0 1 M eq 0 0 ⎥ ⎥ ⎥ 0 ⎥ ⎡ dx ⎤ ⎥ ⎢d ⎥ 0 ⎥⎢ y⎥ ⎥ ⎢⎣ dα ⎥⎦ 0⎥ ⎥ 1⎥ I d ⎥⎦ where: μ0 = Permeability of free space = 4π·10-7 N/A2 μpx0 = Constant magnetic moment of the primary coil Δμdx = Magnetic moment of x-coil on the detector module Δμdy = Magnetic moment of y-coil on the detector module d0 = Nominal separation between the primary and detector dx, dy and dα = Actuator referenced disturbances acting on the detector. From these linearized dynamics we can see that the telescope has decoupled control except for angular motion. Since the bandwidth of angular control is much higher as compared to that of the EMFF coils, for the purpose of showing the feasibility of using EMFF for precision formation flying we can treat the dynamics as decoupled. This would result in much simplified analysis since we only have to show that a controller can be designed that would keep the tracking error within bounds for each axis separately. Considering the dynamics for x-axis we obtain: 0 ⎡ ⎤ ⎡ 0 ⎤ d ⎡ x d ⎤ ⎡ 0 1 ⎤ ⎡ x d ⎤ ⎢ − 3μ μ ⎥ 0 px0 + = Δμ dx + ⎢ 1 ⎥ d x ⎢M ⎥ dt ⎢⎣ x d ⎥⎦ ⎢⎣0 0⎥⎦ ⎢⎣ x d ⎥⎦ ⎢ 2πM d 4 ⎥ eq 0 ⎦ ⎣ eq ⎦ ⎣ 190 (B.9) (B.8) B.5 Disturbance Sources The main contributors to the disturbances acting on the system are as follows: • • • Solar pressure Quantization noise Thermal noise Solar pressure on the telescope results in external torques and forces acting on the system. At L2 the value of radiation pressure is approximately 4.5x10-6 N/m2. Thus an external disturbance force of the order of few micro-Newton would act on the system. This force would be almost constant during an observation and thus act like a bias disturbance. Quantization noise would result from the finite discrete levels of the DAC (Digital to Analog Converter) present in the control system. This noise depends on the number of bits used to represent the analog value in the digital to analog conversion system. Thermal noise is the noise that would be present at the output of the coil driver amplifier. Since the bandwidth of the coil is low and a well designed amplifier would have thermal noise well below quantization noise, its effect will be only secondary to that of the quantization noise. B.4 Controller Synthesis The controller is synthesized for each axis separately as discussed in the previous section on the dynamics. In this section we will present the synthesis of a single axis controller for the x-axis using Matlab tools for H∞ synthesis. Using Figure B.2 as a guideline, the problem for controller synthesis is setup using simplified one-axis Eq. (B.9) as shown in Figure B.4. The weighting functions for error W1 and for control W2 are shown in Figure 191 B.5. Error in position is weighted so that the controller will try to minimize the error within a band of 1 Hz while for higher frequencies the weighting itself makes the error low so the controller does not waste its effort in minimizing error at higher frequencies. Similarly control effort weight is selected so that using control at lower frequencies is less costly as compared to higher frequencies. In both cases Bessel filters of order 2 were used to synthesize the low pass filter and a high pass filter for W1 and W2 respectively. The cut-off frequency for error weighting is selected such that the error remains below the required threshold within the desired bandwidth. Similarly the cut-off frequency for the control weighting is selected to be below the bandwidth of the coil-driver circuit. An integrator is placed in series with the plant so as to make the steady state error zero for bias disturbances. This integrator is later placed in series with the synthesized controller and becomes a part of the controller. Using this setup an H∞ controller was synthesized with the resulting closed-loop transfer functions shown in Figure B.6. Figure B.4: H∞ controller design setup. 192 Bode Magnitude Diagram 20 W1 W2 0 Magnitude (dB) -20 -40 -60 -80 -100 -120 -2 10 -1 10 0 10 w (rad/sec) 1 10 2 10 Figure B.5: Weighting filters for error W1 and control effort W2. We can see from Figure B.6 that the closed-loop transfer function from actuator referenced disturbances, namely w2, to error z1 is well below -25 dB within the designed bandwidth of 1 Hz. Therefore all the disturbances are attenuated considerably as also shown by a time simulation (see Figure B.7) of the closed-loop system with the synthesized controller. In this simulation a constant bias force of approximately 0.4 mN was used. It was assumed that the current driver had large thermal and quantization noise (with a variance of ~ 2 Amperes, uniformly distributed). As can be seen from Figure B.7, even large quantization error resulting in considerable noise current still results in a very small closed loop error well within the desired bounds. 193 Bode Magnitude Diagram 50 0 Magnitude (dB) -50 -100 -150 -200 -250 Tw1z1 Tw1z2 Tw2z1 Tw2z2 -300 -350 -8 10 -6 10 -4 -2 10 10 Frequency (rad/sec) 0 10 2 10 Figure B.6: Closed-Loop TFs for H∞ synthesized controller. B.7 Conclusion From the results in the previous sections we conclude that a controller can be designed for EMFF that would keep the formation within the desired bounds of error for a reasonable bandwidth. Therefore the EMFF concept does not have any inherent limitations as far as precision formation flying is concerned. 194 dist. force (mN) disturbance force vs time 2 1 0 -1 50 40 100 150 200 Ix Ic IQ A 20 0 x-Error (mm) -20 50 -3 x 10 1 250 100 150 200 x-Position Error in mm vs time 250 0 -1 -2 50 100 150 Time (sec) 200 250 Figure B.7: Time response of the closed-loop system to disturbances. Ix is total actuator current, Ic is commanded current and IQ is the current resulting from quantization process. 195 References [1] D. C. Folta, L. K. Newman, and T. Gardner, “Foundations of Formation Flying for Mission to Planet Earth and New Millenium,” Proceedings of the AIAA/AAS Astrodynamics Conference, AIAA, Reston, VA, 1996, pp. 656–666. [2] Raymond J. Sedwick, Edmond M. C. Kong, and David W. Miller, “Exploiting Orbital Dynamics and Micropropulsion for Aperture Synthesis using Distributed Satellite Systems: Applications to TechSat 21,” AIAA Paper 98-5289, Oct. 1998. [3] D. P. Scharf, F. Y. Hadaegh, and S. R. Ploen, “A Survey of Spacecraft Formation Flying Guidance and Control Part I: Guidance”, Proceedings of American Control Conference, Denver, Colorado, June 4-6 2003. [4] Clohessy W. H. and Wiltshire R.S., “Terminal Guidance System for Satellite Rendezvous,” Journal of Aerospace Science, Vol. 27, No. 9, 1960. [5] Simone D Amico et. al., “Formation Flying Concept for Close Remote Sensing Satellites,” Space Flight Mechanics, AAS Vol. 120, Part I, pp831-848, 2005. [6] Soon Jo Chung, “Nonlinear Control and Synchronization of Multiple Lagrangian Systems with Application to Tethered Formation Flight Spacecraft”, PhD Thesis, Massachusetts Institute of Technology, June 2007. [7] Raymond J. Sedwick, S. A. Schweighart, “Electromagnetic formation flight.” Guidance and Control 2003; Proceedings of the 26th Annual AAS Rocky Mountain Conference, Breckenridge, CO, Feb. 5-9, 2003, San Diego, CA, pp 71-83. [8] Edmond M. C. Kong et al. “Electromagnetic Formation Flight for Multi-Satellite Arrays”, Journal of Spacecraft and Rockets, Vol. 41, No. 4, Pages 659-666, July-August 2004. [9] Laila M. Elias, “Dynamics of Multi-Body Space Interferometers Including Reaction Wheel Gyroscopic Stiffening Effects”, PhD Thesis, Massachusetts Institute of Technology, June 2004. [10] Samuel A. Schweighart, “Electromagnetic Formation Flight—Dipole Solution Planning”, PhD Thesis, Massachusetts Institute of Technology, June 2005. [11] Ryosuke Kaneda, Fumito Yazaki, Shin-ichiro Sakai, Tatsuaki Hashimoto and Hirobumi Saito, “The Relative Position Control in Formation Flying Satellites using Super-Conducting Magnets”, 2nd International Symposium on Formation Flying Missions and Technologies, Washington DC, 2004. 197 [12] Edmond M. C. Kong, “Spacecraft Formation Flight Exploiting Potential Fields”, PhD Thesis, Massachusetts Institute of Technology, February 2002. [13] Daniel W. Kwon, “Electromagnetic Formation Flight of Satellite Arrays”, Master’s Thesis, Massachusetts Institute of Technology, February 2005. [14] NIAC Annual Report, “Electromagnetic Formation Flight”, PI Raymond J. Sedwick, August 2004. [15] Richard H. Battin, “An Introduction to the Mathematics and Methods of Astrodynamics”, AIAA Education series, 1999. [16] H. Schaub, J. L. Junkins, “Analytical Mechanics of Space Systems”, Reston, VA, AIAA Educational series, 2003. [17] Gerald L. Pollack, Daniel R. Stump, Electromagnetism, Addison Wesley, San Francisco, 2002. [18] M. G. Calkin, Lagrangian and Hamiltonian Mechanics, World Scientific Publishing Co. Pte. Ltd., Singapore, 1998. [19] Thomas R. Kane, David A. Levinson, “Dynamics: Theory and Applications”, McGraw Hill Book Company, 1985. [20] Thomas and Finney, Calculus and Analytic Geometry, Addison Wesley 1996. [21] Peter C. Hughes, Spacecraft Attitude Dynamics, John Wiley and Sons, New York, 1986. [22] Kuipers, Quaternions and Rotation Sequences, Princeton University Press, 1999. [23] James R. Wertz et al., Space Mission Analysis and Design, Space Technology Library, Third Edition 2003. [24] NASA Report, Magnetic Fields—Earth and Extraterrestrial, SP-8017, March 1969. [25] McLean, S., S. Macmillan, S. Maus, V. Lesur, A.Thomson, and D. Dater, December 2004, The US/UK World Magnetic Model for 2005-2010, NOAA Technical Report NESDIS/NGDC-1. [26] Wallace H. Campbell, Introduction to Geomagnetic Fields, Cambridge University Press, UK, 1997. [27] R. A. Langel, “The Main Field”, in Geomagnetism Vol. 1, Ed. J. A. Jacobs, Academic Press, UK, 1987. 198 [28] Laila M. Elias, Edmund M. Kong, David W. Miller, “An investigation of electromagnetic control for formation flight applications”, Highly Innovative Space Telescope Concepts Edited by Howard A. MacEwen., Proceedings of the SPIE, Volume 4849, pp. 166-180 2002. [29] Matthew D. Neave, “Dynamic and Thermal Control of an Electromagnetic Formation Flight Testbed”, S.M. Thesis, Massachusetts Institute of Technology, June 2005. [30] Hassan K. Khalil, Nonlinear Systems, Prentice Hall, NJ, 2002. [31] Jean-Jacques E. Slotine, Weiping Li, Applied Nonlinear Control, Prentice-Hall Inc, NJ, 1991. [32] Marcio S. de Queiroz, Vikram Kapila, Qiguo Yan, “Adaptive Nonlinear Control of Multiple Spacecraft Formation Flying”, Journal of Guidance, Control, and Dynamics, Vol. 23, No. 3, May-June 2000, pp. 385-390. [33] Oussama Khatib, “Real-time Obstacle Avoidance for Manipulators and Mobile Robots”, The International Journal of Robotics Research, Vol. 5, No. 1, 1986, pp. 90-98. [34] Colin R. McInnes, “Autonomous proximity maneuvering using artificial potential functions”, ESA Journal (European Space Agency), vol. 17, No. 2, 1993, pp 159. [35] Elon Rimon, Daniel E. Koditschek, “Exact Robot Navigation using Artificial Potential Functions”, IEEE Transactions on Robotics and Automation, Vol. 8, No. 5, October 1992, pp 501-518. [36] Steven M. LaValle, Planning Algorithms, Cambridge University Press, 2006. [37] David C. Conner, Alfred A. Rizzi and Howie Choset, “Composition of Local Potential Functions for Global Robot Control and Navigation”, Proceedings of the 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems, Las Vegas Nevada, October 2003. [38] M. Vidyasagar, Nonlinear Systems Analysis, SIAM: Society for Industrial and Applied Mathematics; 2nd edition, October 2002. [39] Dimitri P. Bertsekas, Nonlinear Programming, Second Edition, Athena Scientific, Belmont MA, 1999. [40] Marcio S. de Queiroz, Vikram Kapila, Qiguo Yan, “Adaptive Nonlinear Control of Multiple Spacecraft Formation Flying”, Journal of Guidance, Control, and Dynamics, Vol. 23, No. 3, May-June 2000, pp. 385-390. 199 [41] Bong Wie, Peter M. Barba, “Quaternion Feedback for Spacecraft Large Angle Maneuvers”, Journal of Guidance Control and Dynamics, Vol. 8, No. 3, May-June 1985, p-362. [42] Umair Ahsun, Lennon Rogers, David W. Miller, “Comparison between structurally connected, propellant formation flying and electromagnetic formation flying spacecraft configurations for Gen-X mission”, Proceedings of SPIE, UV/Optical/IR Space Telescopes: Innovative Technologies and Concepts II, Vol. 5899, San Diego, CA, United States, Jul 31-Aug 1 2005. [43] Donald E. Kirk, Optimal Control Theory: An Introduction, Prentice Hall Inc., 1970. [44] John T. Betts, “Survey of Numerical Methods for Trajectory Optimization”, Journal of Guidance, Control and Dynamics, Vol. 21, No. 2, March-April 1998. [45] H. G. Bock and K. J. Plitt, “A Multiple Shooting Algorithm for Direct Solution of Optimal Control Problems”, Proceedings of the 9th IFAC World Congress, Pergamon, 1984, pp. 242-247. [46] Arthur E. Bryson and Yu-Chi Ho, Applied Optimal Control, Hemisphere Publishing Company, Washington D.C., 1975. [47] Fariba Fahroo and I. Michael Ross, “On Discrete Time Optimality Conditions for Pseudospectral Methods”, AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Keystone Colorado, 21-24 August 2006. [48] I. Michael Ross, “A Historical Introduction to the Covector Mapping Principle”, AIAA/AAS Astrodynamics Specialist Conference, Tahoe NV, 8-11 August 2005, AAS 05332. [49] Shivakumar Kameswaran, Lorenz T. Biegler, “Simultaneous dynamic optimization strategies: Recent advances and challenges”, Computers and Chemical Engineering, Vol. 30, September 2006, pp. 1560-1575. [50] J. Stoer, R. Bulirsch, Introduction to Numerical Analysis, Springer, NY, 2002. [51] Philip E. Gill, Walter Murray, Michael A. Saunders, “SNOPT: An SQP Algorithm for Large-Scale Constrained Optimization”, SIAM Journal on Optimization, Vol. 12, No. 4, 2002, pp. 979-1006. [52] Philip E. Gill, Walter Murray, Michael A. Saunders, User’s Guide for SNOPT 7.1: A Fortran Package for Large-Scale Nonlinear Programming, Numerical Analysis Report NA 04-1, Department of Mathematics, University of California, San Diego, La Jolla, CA, 2004. 200 [53] A. Schwartz, E. Polak, “Consistent Approximations for Optimal Control Problems based on Runge-Kutta Integration”, SIAM Journal on Control and Optimization, Vol. 34, No. 4, July 1996, pp 1235-1269. [54] William W. Hager, “Runge-Kutta Methods in Optimal Control and the Transformed Adjoint System”, Numerische Mathematik, Vol. 87, 2000, pp 247-282. [55] J. P. Riehl, S. W. Paris, W. K. Sjauw, “Comparison of Implicit Integration Methods for Solving Aerospace Trajectory Optimization Problems”, AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Keystone CO, 21-24 August 2006, AIAA 2006-6033. [56] Fariba Fahroo and I. Michael Ross, “A Spectral Patching Method for Direct Trajectory Optimization”, Journal of Astronautical Sciences, Vol. 48, No. 2/3, 2000, pp 269-286. [57] Fariba Fahroo and I. Michael Ross, “Direct Trajectory Optimization by a Chebyshev Pseudospectral Method”, Journal of Guidance, Control, and Dynamics, Vol. 25, No. 1, Jan-Feb 2002. [58] David Benson, “A Gauss Pseudospectral Transcription for Optimal Control”, PhD Thesis, Massachusetts Institute of Technology, Feb. 2005. [59] Fariba Fahroo and I. Michael Ross, “A Perspective on Methods for Trajectory Optimization”, AIAA/AAS Astrodynamics Specialist Conference and Exhibit, Monterey CA, 5-8 August 2002. [60] John P. Boyd, Chebyshev and Fourier Spectral Methods, Second Edition (Revised), Dover Publications Inc., 2001. [61] I. Michael Ross and Fariba Fahroo, “Pseudospectral Knotting Methods for Solving Optimal Control Problems”, Journal of Guidance, Control, and Dynamics, Vol. 27, No. 9, May-June 2004. [62] Gamal Elnagar, Mohammad A. Kazemi, and Mohsen Razzaghi, “The Pseudospectral Legendre Method for Discretizing Optimal Control Problems”, IEEE Transactions on Automatic Control, Vol. 40, No. 10, October 1995. [63] Fariba Fahroo and I. Michael Ross, “Costate Estimation by a Legendre Pseudospectral Method”, Journal of Guidance, Control, and Dynamics, Vol. 24, No. 2, March-April 2001. [64] William H. Press et al, Numerical Recipes in C: The Art of Scientific Computing, Cambridge University Press, Second Edition, 1992. 201 [65] Owe Axelsson, “Global Integration of Differential Equations through Lobatto Quadrature”, BIT Numerical Mathematics, Vol. 4, No. 2, June 1964, pp 69-86. [66] Philip J. Davis, and Philip Rabinowitz, Methods of Numerical Integration, Second Edition, Academic Press Inc., 1984. [67] L. Chisci, J. A. Rossiter, and G. Zappa, “Systems with Persistent Disturbances: Predictive Control with Restricted Constraints”, Automatica, Vol. 37, No. 7, 2001, pp 1019-1028. [68] Arthur G. Richards, “Robust Constrained Model Predictive Control”, PhD Thesis, Massachusetts Institute of Technology, 2005. [69] David Q. Mayne, and Hanna Michalska, “Receding Horizon Control of Nonlinear Systems”, IEEE Transactions on Automatic Control, Vol. 35, No. 7, July 1990, pp 814824. [70] James B. Rawlings, “Tutorial: Model Predictive Control Technology”, Proceedings of the American Control Conference, San Diego, California, June 1999. [71] David Q. Mayne, J. B. Rawlings, C. V. Rao, and P. O. M. Scokaert, “Constrained Model Predictive Control: Stability and Optimality”, Automatica, Vol. 36, 2000, pp 789814. [72] John Bellingham, Arthur Richards, and Jonathan P. How, “Receding Horizon Control of Autonomous Aerial Vehicles”, Proceedings of the American Control Conference, Anchorage, AK, May 2002. [73] J. Prakash, Shankar Narasimhan, and Sachin C. Patwardha, “Integrating Model Based Fault Diagnosis with Model Predictive Control”, Industrial and Engineering Chemistry Research, Vol. 44, No. 12, Jun 2005, p 4344-4360. [74] Yoshiaki Kuwata, “Trajectory Planning for Unmanned Vehicles using Robust Receding Horizon Control”, PhD Thesis, Massachusetts Institute of Technology, Feb. 2006. [75] I. Michael Ross, and Fariba Fahroo, “Issues in the Real-Time Computation of Optimal Control”, Mathematical and Computer Modeling, Vol. 43, 2006, pp 1172-1188. [76] Jesse Leitner, “A Hardware in the Loop Testbed for Spacecraft Formation Flying Application”, IEEE Proceedings Aerospace Conference, Big Sky MT, 2001, Vol. 2, pp 615-620. [77] Milton Abramowitz and Irene A. Stegun (Eds.), Handbook of Mathematical Functions, Dover Publications, NY, 1972. 202 [78] T. L. Dean and M. Boddy, “An analysis of time dependent planning”, Proceedings of the Seventh National Conference on Artificial Intelligence, Minneapolis, NA, 1988, pp 49-54. [79] Michael S. Branicky, “Multiple Lyapunov Functions and Other Analysis Tools for Switched and Hybrid Systems”, IEEE Transactions on Automatic Control, April 1998, Vol. 43, No. 4, pp 475-482. [80] Wassim M. Haddad, Vijaysekhar Chellaboina and Natasa A. Kablar, “Non-linear Impulsive Dynamical Systems. Part I: Stability and Dissipativity”, International Journal of Control, 2001, Vol. 74, No. 17, pp 1631-1658. [81] Zhengguo Li, Cheong Boon Soh and Xinhe Xu, “Lyapunov Stability of a Class of Hybrid Dynamic Systems”, Automatica, 2000, Vol. 36, No. 2, pp 297-302. [82] A. Bacciotti, L. Mazzi, “An Invariance Principle for Nonlinear Switched Systems”, Systems and Control Letters, 2005, Vol. 54, pp 1109-1119. 203