Modeling, Estimation, and Prototype Design for the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail A THESIS SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY Nathan Raab IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE Prof. Ryan James Caverly August, 2023 © Nathan Raab 2023 ALL RIGHTS RESERVED Acknowledgements I would like to take this opportunity to acknowledge the support I received leading to and during the time I spent working on this thesis. This would not have been possible without the support of everyone who helped me along the way. For that, I am extremely grateful. I want to thank my family for encouraging me to pursue my dreams and providing me with the opportunities to achieve them. My mom, Sandra Thiele, for all the tireless hours spent providing for me, answering my countless “why” and “how” questions, and being an incredible role model. My grandpa, Randal Gascoigne, for inspiring my passion for electrical engineering and robotics. And my grandma, Sharon Gascoigne, for teaching me everything else. I also want to thank my advisor, Professor Ryan Caverly, for his guidance and support during my time in the Aerospace, Robotics, Dynamics, and Control (ARDC) Lab. His valuable insight and knowledge were key to my success. I am grateful for the opportunity he provided to work on this project and the invaluable learning experiences I gained during my time working on this thesis. Finally, I would like to acknowledge the support I received from my friends in the ARDC lab during this project. Whether it was providing ideas or talking through problems, everyone was more than willing to help me overcome the chal- lenges I faced. I would also like to extend special thanks to all of the team members who helped with the CABLESSail project. Thanks to the graduate team, Kee- gan Bunker and Soojeong Lee. Thanks to the senior design team, Garvin Saner, Zixin Chen, Tyler Douvier, Richard J. Lyman, Owen Sorby, Benjamin Sorge, i Ebise Teshale, and Benjamin Toriseva, who helped lay the groundwork for much of the solar sail theory and preliminary analysis. And thanks to Michael Dallalah, Michael States, and Niko Sexton, who helped design and test the CABLESSail prototypes. ii Dedication To my family, especially my mother and grandparents. iii Abstract Traditional spacecraft that utilize rocket engines for propulsion have a fundamen- tal drawback in that they require the use of rocket fuel. As a result, there is a need to develop spacecraft with alternative means of propulsion that can extend the effective mission range without relying on heavy, expensive rocket fuel. One of the most promising alternative means of propulsion is the solar sail. These sails utilize the reflection of solar radiation pressure and the corresponding transfer of momentum to achieve propulsion. However, one of the most significant challenges pertaining to solar sail design is the means by which stabilization and attitude control are achieved. To address these challenges, this thesis presents the concept of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail (CABLESSail). This novel solar sail concept uses cable-actuated flexible beams to achieve sta- bilization and attitude control by means of sail shape modulation. Analysis is shown that confirms the feasibility of the CABLESSail model by demonstrating that NASA mission attitude control requirements for both Solar Cruiser and So- lar Polar Imager can be achieved through cable actuation. A method to predict the end-effector pose given the cable lengths or cable tension is discussed, with in- tended application in a control algorithm to control the end-effector pose. A proto- type cable-driven continuum manipulator is designed for use as the cable-actuated flexible beam. The cable-driven continuum manipulator is modeled in simulation, and the simulation results of the beam deflection, induced cable torque, and the change in motor position are compared to experimental results. iv Contents Acknowledgements i Dedication iii Abstract iv List of Tables viii List of Figures xi 1 Introduction 1 1.1 Motivation for the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Thesis Outline and Contributions . . . . . . . . . . . . . . . . . . 5 2 Theory of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail 7 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 CABLESSail Concept and Model . . . . . . . . . . . . . . . . . . 8 2.3 CDCM Concept and Model . . . . . . . . . . . . . . . . . . . . . 10 2.4 Technical Requirements . . . . . . . . . . . . . . . . . . . . . . . 12 2.5 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.5.1 Pitch/Yaw Torque Simulation Results . . . . . . . . . . . . 21 2.5.2 Roll Torque Simulation Results . . . . . . . . . . . . . . . 28 v 2.5.3 Propulsion Force Losses Discussion and Simulation Results 33 2.6 Closing Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3 Deriving the Forward Kinematics of the Cable-Driven Continuum Manipulator 38 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.2 Polynomial Fitting for the Forward Kinematics of the CDCM . . 39 3.2.1 Polynomial Fitting for the Forward Kinematics of the CDCM using Uniformly Spaced Data . . . . . . . . . . . . 40 3.2.2 Polynomial Fitting for the Forward Kinematics of the CDCM using Chebyshev Nodes . . . . . . . . . . . . . . . 43 3.2.3 Polynomial Fitting Discussion . . . . . . . . . . . . . . . . 47 3.3 Assumed Modes Method for the Forward Kinematics of the CDCM 50 3.4 Neural Network Method for the Forward Kinematics of the CDCM 55 3.5 Closing Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4 Hardware Design of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail 65 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.2 Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.2.1 Iteration I . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.2.2 Iteration II . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.2.3 Iteration III . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.3 Hardware Selection . . . . . . . . . . . . . . . . . . . . . . . . . . 73 4.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.5 Closing Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 5 Modeling the Dynamics of the Cable-Driven Continuum Manip- ulator Hardware 88 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 5.2 Permanent Magnet Synchronous Motor Concepts . . . . . . . . . 89 vi 5.3 Modeling the ODrive D6374 . . . . . . . . . . . . . . . . . . . . . 96 5.4 Controller Design for the ODrive D6374 . . . . . . . . . . . . . . 102 5.5 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . 107 5.6 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . 114 5.7 Closing Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 6 Conclusion 128 References 130 Appendix A. Solar Sail Beam Deformation for the Collapsible Tubular Mast Beam 136 Appendix B. Additional Cable-Driven Continuum Manipulator Figures 139 B.1 Iteration I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 B.2 Iteration III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 Appendix C. Prototype Cable-Driven Continuum Manipulator Parts List 145 vii List of Tables 2.1 NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2 Alternative NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager. . . . . . . . . . . . . . . . . . . . 14 2.3 Combined NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager. . . . . . . . . . . . . . . . . . . . . . . . 14 2.4 Material properties for Hexcel® IM7/977-2. . . . . . . . . . . . . 15 2.5 Area moment of inertia properties of the TRAC boom cross-section as modeled in Solidworks . . . . . . . . . . . . . . . . . . . . . . . 16 2.6 Material properties for the NEA Scout Sail. . . . . . . . . . . . . 20 2.7 Cable tension, cable length displacement, and boom displacement required for attitude control to achieve double the NASA pitch/yaw torque requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.8 Cable tension, cable length displacement, and boom displacement required for stabilization control to achieve double the NASA pitch/yaw torque requirements . . . . . . . . . . . . . . . . . . . . 28 2.9 Boom twist required to achieve double the NASA roll torque requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.10 Boom twist required to achieve double the NASA roll torque requirements using the trapezoidal method . . . . . . . . . . . . . 33 3.1 R2 values of the polynomial fit function applied to uniformly spaced data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 viii 3.2 RMSE values of the polynomial fit function generated from uniformly spaced data applied to randomly generated data. . . . . 42 3.3 Functions representing the equilibrium solution for the CDCM pose vs. cable length. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.4 R2 values of the polynomial fit function applied to data generated from the Chebyshev node distribution. . . . . . . . . . . . . . . . 45 3.5 RMSE values of the polynomial fit function generated from the Chebyshev node distribution applied to randomly generated data. 46 3.6 Functions representing the equilibrium solution for the CDCM pose vs. cable length using the Chebyshev node distribution. . . . . . . 47 3.7 RMSE values of the polynomial fit function generated from the Chebyshev random distribution. . . . . . . . . . . . . . . . . . . . 49 3.8 Parameters of the neural network gradient equations . . . . . . . 58 3.9 Average RMSE of the pose with respect to the number of epochs. 60 3.10 Average RMSE of the pose with respect to the number of layers. . 60 3.11 Average RMSE of the pose with respect to the number of layers. . 60 3.12 Average RMSE of the pose with respect to the method of data generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.13 Average RMSE of the pose with respect to the number of layers, considering only epochs 101, 251, and 501. . . . . . . . . . . . . . 61 3.14 Average RMSE of the pose with respect to the number of layers, considering only epochs 101, 251, and 501. . . . . . . . . . . . . . 61 3.15 Average RMSE of the pose with respect to the method of data generation, considering only epochs 101, 251, and 501. . . . . . . . 62 4.1 Area moment of inertia properties of the tape measure TRAC boom cross-section. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 4.2 Material properties for polycarbonate . . . . . . . . . . . . . . . . 79 4.3 Material properties for a C1095 steel alloy . . . . . . . . . . . . . 80 4.4 Functions representing the equilibrium solution for the polycarbon- ate beam displacement and motor torque vs. rotations. . . . . . . 81 ix 4.5 Functions representing the equilibrium solution for the tape measure TRAC boom displacement and motor torque vs. rotations. 81 4.6 Simulation results for the 3 ft polycarbonate beam using the PRB model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.7 Simulation results for the 2.5 m tape measure TRAC boom using the PRB model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.8 Experimental equilibrium results for the 3 ft polycarbonate beam. 85 4.9 Simulation results for the 3 ft polycarbonate beam using the PRB model and the experimental torques for each set point. . . . . . . 85 5.1 Parameters of the PMSM equations. . . . . . . . . . . . . . . . . 95 5.2 Motor properties for the ODrive D6374. . . . . . . . . . . . . . . 97 5.3 Inferred and measured motor properties for the ODrive D6374. . . 98 5.4 Experimental parameters and derived coefficients for the static friction evaluation using the ODrive D6374. . . . . . . . . . . . . 99 5.5 Experimental parameters for the kinetic friction evaluation using the ODrive D6374. . . . . . . . . . . . . . . . . . . . . . . . . . . 101 5.6 Kinetic friction coefficients for the ODrive D6374. . . . . . . . . . 101 5.7 Parameters of the ODrive D6374 controller . . . . . . . . . . . . . 103 5.8 Simulated and experimental deflection of the end-effector with the polycarbonate beam. . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.9 Motor position corresponding to the experimental end-effector de- flection and the resulting position ratio between the corresponding motor position and the motor set point. . . . . . . . . . . . . . . . 120 C.1 Parts list for all components required for construction of the third iteration of the CDCM. . . . . . . . . . . . . . . . . . . . . . . . . 150 x List of Figures 2.1 Schematic of the CABLESSail model. . . . . . . . . . . . . . . . . 8 2.2 Schematic of the CABLESSail concept of operation. . . . . . . . . 9 2.3 Example CDCM schematic with twelve cable elements. . . . . . . 10 2.4 CDCM model with two direct cables and two helical cables. . . . 11 2.5 Cross-sectional models of three boom designs used in NASA solar sail projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.6 Dimensions of the TRAC boom used in NASA solar sail projects. 16 2.7 Model of the TRAC boom cross-section in Solidworks . . . . . . . 17 2.8 Lateral boom deflection vs. cable tension for the chosen disk radii of 2 cm, 4 cm, 6 cm, 8 cm, and 10 cm. . . . . . . . . . . . . . . . 20 2.9 Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2.0 cm cable radius and 85 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.10 Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2.0 cm cable radius and 67 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.11 Maximum beam deformation required for attitude control. . . . . 26 2.12 Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2.0 cm cable radius and 34 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 xi 2.13 Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2.0 cm cable radius and 17 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.14 Maximum beam deformation required for stabilization control. . . 28 2.15 Roll torque generated from boom twist for Solar Cruiser with a 15 cm spreader length. . . . . . . . . . . . . . . . . . . . . . . . . 30 2.16 Roll torque generated from boom twist for Solar Polar Imager with a 60 cm spreader length. . . . . . . . . . . . . . . . . . . . . . . . 30 2.17 Roll torque generated from boom twist for Solar Cruiser with a 15 cm spreader length using the finite element trapezoid method. 32 2.18 Roll torque generated from boom twist for Solar Polar Imager with a 60 cm spreader length using the finite element trapezoid method. 32 2.19 Propulsion (normal) force with respect to lateral cable actuation for Solar Cruiser. . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.20 Propulsion (normal) force with respect to lateral cable actuation for Solar Polar Imager. . . . . . . . . . . . . . . . . . . . . . . . . 35 2.21 Propulsion (normal) force with respect to torsional cable actuation for Solar Cruiser using the trapezoid method. . . . . . . . . . . . 36 2.22 Propulsion (normal) force with respect to torsional cable actuation for Solar Polar Imager using the trapezoid method. . . . . . . . . 36 3.1 Illustration of Runge’s Phenomenon, and the advantage of Cheby- shev interpolation (CIP) over other interpolation methods. In this case, Lagrange interpolation (LIP). . . . . . . . . . . . . . . . . . 44 3.2 Cantilever beam simulation plotted over time along with its equilibrium position. . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.3 Cantilever beam simulation plotted over time along with its bounding envelope. . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.4 Illustration of a standard perceptron with an arbitrary activation function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.5 Illustration of a standard neural network with a single output. . . 56 xii 4.1 Isometric model of the first iteration of the CDCM base. . . . . . 67 4.2 Isometric model of the first iteration of the CDCM beam elements. 67 4.3 Isometric model of the second iteration of the CDCM beam elements. 68 4.4 Isometric model of the third iteration of the CDCM base. . . . . . 69 4.5 Isometric model of the polycarbonate beam insert for the third iteration of the CDCM. . . . . . . . . . . . . . . . . . . . . . . . . 70 4.6 Isometric model of the tape measure beam insert for the third iteration of the CDCM. . . . . . . . . . . . . . . . . . . . . . . . . 70 4.7 Isometric model of the third iteration of the CDCM beam elements. 71 4.8 Isometric model of the beam elements used for the tape measure TRAC boom. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 4.9 Model of the tape measure TRAC boom cross-section. . . . . . . 73 4.10 Hardware selection for the CDCM. . . . . . . . . . . . . . . . . . 75 4.11 Arduino Giga R1 used for CDCM control . . . . . . . . . . . . . . 76 4.12 Polycarbonate beam for the CDCM. . . . . . . . . . . . . . . . . 76 4.13 Tape measure TRAC boom for the CDCM. . . . . . . . . . . . . . 77 4.14 Fully assembled third iteration of the CDCM. . . . . . . . . . . . 77 4.15 (a) The SureStep regeneration clamp and (b) the Mean Well LRS- 600-24 power supply. . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.16 Experimental results for the CDCM with the polycarbonate beam. 83 5.1 Illustration of the Clarke and Park transformation from a three- phase static reference frame to a two-parameter rotating reference frame. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5.2 Equivalent q-axis circuit diagram of a three-phase PMSM after applying the DQZ transformation, assuming zero d-axis current. . 93 5.3 Interior of the KDE Direct KDE2315XF-885, a hobby-grade outrunner motor similar to the ODrive D6374. . . . . . . . . . . . 96 5.4 Circuit diagram of a three-phase PMSM, such as the ODrive D6374. 97 5.5 Total friction vs. motor velocity for the ODrive D6374. . . . . . . 101 xiii 5.6 Cascaded position, velocity, and current controller implemented by ODrive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 5.7 Simulation results for the CDCM with the TRAC boom assuming constant voltage. . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 5.8 Power requirement simulation results for the CDCM with the TRAC boom assuming constant voltage. . . . . . . . . . . . . . . 109 5.9 Simulation results for the CDCM with the TRAC boom using torque control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5.10 Power requirement simulation results for the CDCM with the TRAC boom using torque control. . . . . . . . . . . . . . . . . . . 110 5.11 Simulation results for the CDCM with the TRAC boom using position control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5.12 Power requirement simulation results for the CDCM with the TRAC boom using position control. . . . . . . . . . . . . . . . . . 114 5.13 Simulation and experimental motor position results for the CDCM with the polycarbonate beam using position control. . . . . . . . . 116 5.14 Simulation and experimental motor torque results for the CDCM with the polycarbonate beam using position control. . . . . . . . . 117 5.15 Simulation and experimental end-effector deflection results for the CDCM with the polycarbonate beam using position control. . . . 118 5.16 Modified simulation and experimental motor position results for the CDCM with the polycarbonate beam using position control. . 121 5.17 Modified simulation and experimental motor torque results for the CDCM with the polycarbonate beam using position control. . . . 122 5.18 Modified simulation and experimental end-effector deflection re- sults for the CDCM with the polycarbonate beam using position control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 5.19 Mechanical power requirement simulation and experimental results for the CDCM with the polycarbonate beam. . . . . . . . . . . . 125 xiv 5.20 Electrical power losses simulation and experimental results for the CDCM with the polycarbonate beam. . . . . . . . . . . . . . . . . 126 A.1 Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2 cm cable radius and 8.2 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 A.2 Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2 cm cable radius and 6.45 N of maximum tension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 B.1 Engineering Diagram of the first iteration of the CDCM base. . . 140 B.2 Isometric model of the first iteration of the CDCM base with the motor enclosure removed. . . . . . . . . . . . . . . . . . . . . . . 141 B.3 Engineering Diagram of the third iteration of the CDCM base. . . 142 B.4 Isometric model of the third iteration of the CDCM base with the motor enclosures removed. . . . . . . . . . . . . . . . . . . . . . . 143 B.5 Isometric model of the interior of the third iteration of the CDCM base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 B.6 Isometric model of the tape measure TRAC boom with attached beam elements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 xv Chapter 1 Introduction 1.1 Motivation for the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail Since the advent of space flight, the traditional means of propulsion in space has been through the use of rocket engines. However, traditional rocket engines have one major drawback: they require a significant amount of fuel. In particular, a typical planetary-exploration spacecraft carries up to 25 percent of its launch weight as rocket fuel [1]. This is a significant limitation to the mission capabilities of a traditional rocket-fueled spacecraft. As a result, one of the main focuses in spaceflight research is on ways to increase the efficiency of space travel. One of the most promising areas of research is the concept of solar sails. Solar sails are structures that use solar radiation pressure to serve as the means of propulsion for a spacecraft [2]. Like a classical sailing vessel that uses wind to propel itself forward, a solar sail relies on photons hitting its sail for propulsion. This has advantages of being both extremely efficient and lightweight compared to traditional spacecraft since the solar sail uses no fuel. These fuel savings could theoretically allow for a host of new mission possibilities. For example, the ef- ficiency of solar sails can be utilized to achieve orbits outside the ecliptic plane, 1 2non-keplerian orbits, and interstellar travel [3–6]. The first solar sails have just recently begun to take flight. In 2005, the first solar sail mission ever attempted was launched, named Cosmos 1 [7]. However, the spacecraft never reached its intended orbit, and the mission was a failure. The first successful solar sail mission was IKAROS, launched by the Japanese Aerospace Exploration Agency in 2010 [7]. Tension in the sail was maintained using centripetal acceleration. Attitude control was achieved using 80 liquid crys- tal display (LCD) panels whose reflectivity could be controlled. At 196 square meters, this is also the largest solar sail successfully tested to date [8]. Since the launch of IKAROS, the majority of solar sails have been CubeSats - small, lightweight, cube-shaped spacecraft. These include the NanoSail-D2, LightSail 1 and LightSail 2, and Near-Earth Asteroid (NEA) Scout [7]. These solar sails had sail areas of 10 m2, 32 m2, 32 m2, and 86 m2, respectively. However, as discussed in [7], transitioning from proof of concept to advanced mission concepts will re- quire significantly larger solar sail designs. This is because the force induced by solar radiation pressure is very small [9]; at 1 AU, the force induced by solar ra- diation pressure is only 9.126 µN/m2. Some of these conceptual designs include SunJammer, which would have a sail area of over 1200 m2, Solar Cruiser, which would have a sail area of 1653 m2, and Solar Polar Imager, which would have a sail area of over 7000 m2 [10–12]. However, as solar sails grow in size, new design chal- lenges emerge. In particular, the inertia of the spacecraft increases significantly, and the structural rigidity of the solar sail beams becomes a concern. Some of the most significant challenges related to solar sail development are the method of attitude control and its overall structural integrity [7]. In many ways, these challenges are intertwined with each other and with the size of the sail. As the solar sail increases in size, it will tend to increase in both mass and inertia. Correspondingly, the attitude control problem becomes more challenging, as more control authority is needed to move a more massive sail. Yet, relying on a heavy mass attitude control method would limit the effectiveness of the sail’s propulsion. Similarly, as the sail becomes physically larger, the material properties of the sail 3must improve in order to maintain structural integrity. Many solutions have been proposed to provide attitude control for solar sails. The most straightforward approach simply uses conventional thrusters attached to the spacecraft to provide attitude control [13]. However, this limits the advan- tage of the sail’s propellantless design. Another method uses reaction wheels for attitude control. This is a very common approach utilized by many spacecraft. However, as the size and inertia of the solar sail increase, the control authority of the reaction wheels must similarly increase. In general, this means the mass of the reaction wheels must increase, which increases the mass of the overall spacecraft. For solar sails, where mass is a significant concern, larger reaction wheels are not always a feasible solution. A somewhat similar approach uses active mass control for attitude control [13]. Several different methods of active mass control have been proposed for solar sail attitude control. The first is the “two-axis gimbal” method. In this design, the spacecraft uses control masses located near the center of mass and shifts the center of mass with respect to the center of pressure to induce a torque [13]. However, this method is strongly limited by the uncertainty in the center of mass and center of pressure. This method also only achieves two- dimensional attitude control. Thus, this method would have to be combined with another form of attitude control to achieve complete control authority. The second is the “translating masses” method. In this design, masses are mounted along the booms of the sail and can be translated to augment the center of mass. Similar to the two-axis gimbal method, this method only achieves two-dimensional attitude control. One method unique to solar sails is to attach tip vanes to the end of the sail booms [13]. Similar to airplane control surfaces, this method uses reflective surfaces that rotate in one or two axes in order to achieve differential momentum transfer and thus a net torque. However, these vanes can be quite complex and large in mass, which can increase the mass and inertia of the sail. Since they also provide control authority using solar radiation pressure, the control authority of the sail depends on the solar irradiance observed by the sail [14]. A relatively 4unique approach involves the use of reflectivity control to achieve control author- ity. The most notable example of this method is the reflectivity control devices used by IKAROS [7]. By controlling the reflectivity of 80 LCDs mounted on the edge of the sail, differential reflectivity can be induced and the orientation of the sail can be controlled. However, this necessitates the addition of LCD panels along with electrical wiring and a power source to control the reflectivity of the panels, complicating the design of the spacecraft [15]. Further, the control authority of the reflectivity control devices can degrade over time [15]. Finally, some literature has proposed to implement three-axis control by precisely deforming the solar sail [16]. In [16, 17], the boom itself is controlled by attachment to a gimbaled control boom. But for very large sails, the gimbal needs to be strong enough to stabilize a very long boom. In [17], the idea of implementing control authority based on the deformation of the flexible sail film is introduced. However, this paper does not describe the method by which the sail film is controlled. As the size of the solar sail spacecraft increases, the structural integrity of the booms must be taken into consideration. In general, solar sails can either utilize booms or rely on centripetal acceleration through constant spin motion to maintain sail tension [7]. A spacecraft that relies on constant rotation to maintain stability has several clear drawbacks. In particular, the attitude control becomes significantly more complex, and the lack of support structure means the sail is prone to oscillations. However, a sail that uses booms has several disadvantages as well. The storage and deployment of the booms is non-trivial, and results in booms that need to be stored compactly. This limits the structural rigidity of the booms since they must be sufficiently flexible as required for compact storage. As a result, large sails utilizing the boom structure may still need to undergo rotation to prevent the booms from buckling. This thesis proposes a novel approach to solar sail design based on the princi- ples of the cable-driven continuum manipulator (CDCM). In this design, each of the sail booms is flexible. The flexible boom has several backbone structures, or disks, with cables that are threaded through these discs in a particular manner 5to achieve control authority. In particular, with two directly threaded and two helically threaded cables in each of the four booms of a solar sail, full three-axis control authority can be achieved. Furthermore, by maintaining positive tension in the cables, structural integrity of the sail can be ensured. 1.2 Thesis Outline and Contributions This thesis develops the concept of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail (CABLESSail), a novel solar sail design approach that uses cables to actuate the sail beams in order to provide attitude control. The design criteria for the solar sail are given by NASA and interpreted in the context of the CABLESSail design. This provides design criteria for the CDCM, which is the fundamental robot model that controls the deflection of the CABLESSail beams. This design is implemented in hardware and compared with the results predicted by simulation. The structure of this thesis and the major contributions of each chapter are outlined in the following paragraphs. Chapter 2 provides a detailed background of solar sail concepts in order to in- terpret the NASA mission requirements in the context of the CABLESSail model. In particular, the CABLESSail design is analyzed in the context of both Solar Cruiser and Solar Polar Imager. The sail is modeled using a high-fidelity solar radiation pressure force equation that considers the particular sail material prop- erties. The boom properties of the TRAC boom are modeled in simulation to determine the magnitude of deformation for a particular cable tension. Finally, the resulting roll, pitch, and yaw attitude control torques are determined for a sweep of beam deformations in order to determine the particular beam deforma- tion that meets the NASA requirements. Chapter 3 discusses the estimation of the end-effector pose of the CDCM given the measurements available to the robot. Three different methods are discussed and compared. The first method is the polynomial line of best fit using inter- polation of the static equilibrium data. The second method solves the nonlinear 6equilibrium solution of a cantilever beam model of the CDCM. The third method implements a neural network to predict the end-effector pose. Chapter 4 steps through the hardware design and build process for each of the three iterations of the prototype CDCM. The control methods, hardware selection, and structural design rationale are provided. Experimental data is collected and compared with the simulation models developed in Chapters 2 and 3. Chapter 5 derives a dynamic model of the permanent magnet synchronous motor used for the actuation of the prototype CDCM. The theory and governing equations of the motor are provided. The motor controller is implemented using the field-oriented control technique. This model is compared in simulation to the experimental results found in Chapter 4. Chapter 2 Theory of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail 2.1 Introduction The concept of the CABLESSail is built upon the concept of the cable-driven continuum manipulator (CDCM). In order to develop a scale prototype of the CABLESSail concept, the CDCM must first be designed to provide actuation of the booms. In addition, this design must integrate with existing NASA designs and mission criteria for solar sails. Building on the work of a senior design team at the University of Minnesota, this chapter details the modeling of the CDCM using the NASA-developed Triangular Rollable And Collapsible (TRAC) boom design. This chapter provides a quantitative analysis of the forces required to gen- erate the required boom deflection in order to meet NASA mission requirements. In addition, this chapter quantifies the propulsive force losses associated with a deflected sail. 7 82.2 CABLESSail Concept and Model The CABLESSail model is a solar sailing vessel that integrates cable-controlled flexible booms in order to precisely deform the sail and provide attitude and stability control [18]. The cables are routed along the flexible booms through discrete beam elements and connect to an actuator at the base of the boom, such as a motor and winch. As the torque of the motor is controlled, the cable tension is modified and induces a reaction force that pulls on the boom. The magnitude of cable tension corresponds precisely to the magnitude of beam deflection. In turn, the magnitude of boom deflection induces a solar radiation pressure (SRP) disparity across the sail, which induces torque. This torque induces a roll, pitch, or yaw motion of the sail, depending on cable actuation. A schematic of the CABLESSail concept is shown in Fig. 2.1. b −→ 3 b −→ 1 b −→ 2Sail Flexible Boom Spreader Bus b −→ 1 b −→ 2 Flexible Boom Rigid Boom Location T2 T3 T4 T2 and T3 Twist the Boom/Sail T1 and T4 Bend the Boom/Sail Winches in Bus Actuate T1, T2, T3, T4: T1 Spreaders b −→ 2 b −→ 1 Torque About b −→ 3 (Yaw) Bending InducesExample: Figure 2.1: Schematic of the CABLESSail model [18]. Each cable induces a single-axis beam deformation. The axis of deformation depends on the particular cable routing along the beam, either direct or helical. Direct cable routing provides a lateral deformation in the direction of the cable with respect to the axis of the boom, while helical cable routing provides a tor- sional deformation about the axis of the boom. In order to achieve the maximum 3-DoF of control authority, a total of eight cables are needed - four helically routed cables, and four direct routed cables. However, in the CABLESSail concept, only 9one axis of lateral deformation is needed. In certain cable actuation designs, the number of cables can be further reduced if torsional and lateral deformation are only needed in a single direction. In these cases, the total number of cables can be reduced to six or three, respectively. This design is inspired by the concept of the CDCM, which is discussed in the following section. The concept by which the beam deformation induces a net torque across the sail is illustrated in Fig. 2.2. Illustrated is an ideal solar sail with nominal deflec- tion, along with a qualitative representation of the induced SRP force disparity. In each case, the photons reflecting off the surface transfer their momentum to the spacecraft. This can be quantified as the magnitude of the SRP force. As the sail area is deflected, the angle of the photon reflection is modified. As the magnitude of the deflection angle is increased with respect to the sun, the normal component of the photon reflection is reduced and the translational component is increased. As a result, the induced SRP force is no longer constant across the sail. The magnitude of induced torque is therefore determined based on the differential SRP force acting on the sail. b −→ 2 b −→ 1 direction induces torque about b −→ 3 (yaw) Bending of one or both booms in b −→ 1 b −→ 3 b −→ 1 b −→ 2 b −→ 2 b −→ 1 δ1 δ2 δ2 2-Boom Bending: 1-Boom Bending: (a) b −→ 2 b −→ 1 axes induces torque about b −→ 2 (roll) Twisting all booms about their longitudinal b −→ 3 b −→ 1 b −→ 2 δ3 (b) Figure 2.2: Schematic of the CABLESSail concept of operation. Shown are the (a) lateral boom deformation and (b) torsional boom deformation. The CABLESSail concept is designed for integration with existing NASA mod- els for both Solar Cruiser and Solar Polar Imager. NASA requirements are used to develop the design criteria for the CABLESSail concept, including the magnitude of deflection and actuator control authority. 10 2.3 CDCM Concept and Model The CDCM is a modified suspended cable-driven parallel robot (CDPR) that is constrained by a flexible beam in place of, or in addition to, the force of gravity. In addition, the CDCM introduces a backbone structure that threads the cables from the base of the manipulator to the end-effector. As a result, the deformation of the beam is approximately constant. The cables are controlled by a load, typically a winch attached to a motor located behind the base of the CDCM. An example CDCM schematic is shown in Fig. 2.3. Figure 2.3: Example CDCM schematic with twelve cable elements [19]. In this thesis, the CDCM considered is a 4-actuator, 2-DoF robot. Hence, the CDCM is over-constrained. Each of the degrees of freedom is controlled by two parallel motors. These motors apply torque to control the tension in their respective cables. Two of these cables are threaded directly to provide lateral de- formation and two cables are threaded helically to provide torsional deformation. This is illustrated in Fig. 2.4. 11 uˆ1 x1 x3 x2 uˆ2uˆ3 uˆ4 Fn Base DiscsDirect Cables Helical Cables Flexible Boom Figure 2.4: CDCM model with two direct cables and two helical cables. Note that the number of discs can be modified and the dimensions are not to scale. The pose of the CDCM is described by a 7-state vector consisting of the position and the quaternion of the end-effector of the beam. Explicitly, the state vector is z = [ x1 x2 x3 qw qx qy qz ]⊤ , (2.1) where the quaternion coefficients are given by qw + qxi+ qyj+ qzk. (2.2) The physical model of a CDCM is both complex and nonlinear. Significant work has been conducted on the modeling of CDCMs at the University of Min- nesota. Work from Vinh Nguyen in the Aerospace, Robotics, Dynamics, and Control (ARDC) Lab has modeled the dynamics of a CDCM given some input parameters and the physical parameters of the CDCM. With this, it is shown that the CDCM can achieve both lateral and torsional deformation, as required to provide full 3-axis control of a solar sail. 12 2.4 Technical Requirements Preliminary work from a senior design team at the University of Minnesota has benchmarked the magnitude of deformation required to achieve NASA mission criteria for Solar Cruiser and Solar Polar Imager at particular solar incidence an- gles (SIAs). Their analysis utilized a CDCM model developed by the University of Toronto Mississauga [20]. This code allows for the particular CDCM beam properties to be modeled in simulation in order to predict the precise beam de- formation given applied cable tensions. In addition, the gravitational acceleration can be modified to reflect Earth’s gravity or to simulate operation in zero grav- ity. The gravitational acceleration parameter was set to zero since the intended operation of the CDCM is in space. This code had five different methods to model a CDCM, each with trade- offs between accuracy and computation time. For their analysis of lateral beam deformation, the senior design team selected the constant curvature subsegment (CCsub) method. This method assumes that each subsegment between beam el- ements retains a constant curvature. Compared to other methods, this method is more accurate than the constant curvature (CC) approach, but faster compu- tationally (but less accurate) than the variable curvature and pseudo-rigid body approaches. For this analysis, the loss of accuracy was deemed acceptable in order to minimize computation time. The simulation model developed in this chapter seeks to improve upon the work of the senior design team, which was limited in several respects. First, their analysis approximated the boom material properties using a generic carbon-fiber beam. Second, the analysis assumed only one boom deformation at a time. Third, the analysis only investigated SIA defined with respect to the axis of deformation, but did not investigate SIA for different clock angles. Fourth, their torsional deformation analysis assumed the sail connects only at the tip of the boom, and thus the sail deformation is approximated as a triangle. This triangle is defined by the vector from the connection point at the satellite to the twisted end-effector 13 of the boom. This is not accurate with respect to the deformation caused by helically threaded cables, particularly for a sail with several beam elements along the boom. Finally, the analysis used an approximation for reflectivity rather than considering the material properties of the sail. Building off of the model developed in [20], these aspects of the analysis are extended to more accurately model the existing technology in use by NASA. The mission requirements for both Solar Cruiser and Solar Polar Imager are outlined in [21] and are provided in Table 2.1. However, different documentation Case Out-of-Plane (Roll) Torque (Nm) In-Plane (Pitch/Yaw) Torque (Nm) Solar Cruiser (1650 m2) 0° SIA 4.7×10-6 5.5×10-4 Solar Cruiser (1650 m2) 35° SIA 4.9×10-5 2.4×10-3 Solar Polar Imager (7000 m2) 0° SIA 7.7×10-5 4.6×10-3 Solar Polar Imager (7000 m2) 17° SIA 6.4×10-4 4.7×10-2 Table 2.1: NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager [21]. provides slightly different mission criteria for both Solar Cruiser and Solar Polar Imager [22]. In particular, the in-plane torque requirements for Solar Cruiser at 0° SIA and the SIA requirements for Solar Polar Imager are modified. These modified criteria are provided in Table 2.2. Noting the discrepancy between these two re- quirements, the more extreme criterion is considered for each of the requirements. These combined requirements are outlined in Table 2.3. NASA outlines three flexible boom designs for use in its solar sail projects [23]. These are named the Storable Tubular Extendable Member (STEM), the Collapsi- ble Tubular Mast (CTM), and the TRAC boom. The cross-sectional models of these designs are illustrated in Fig 2.5. These booms are composed of carbon fiber reinforced polymer. In [23], the carbon fiber is Hexcel® IM7 and the polymer is 14 Case Out-of-Plane (Roll) Torque (Nm) In-Plane (Pitch/Yaw) Torque (Nm) Solar Cruiser (1650 m2) 0° SIA 4.7×10-6 5.5×10-5 Solar Cruiser (1650 m2) 35° SIA 4.9×10-5 2.4×10-3 Solar Polar Imager (7000 m2) 0° SIA 7.7×10-5 4.6×10-3 Solar Polar Imager (7000 m2) 35° SIA 6.4×10-4 4.7×10-2 Table 2.2: Alternative NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager [22]. Case Out-of-Plane (Roll) Torque (Nm) In-Plane (Pitch/Yaw) Torque (Nm) Solar Cruiser (1650 m2) 0° SIA 4.7×10-6 5.5×10-4 Solar Cruiser (1650 m2) 35° SIA 4.9×10-5 2.4×10-3 Solar Polar Imager (7000 m2) 0° SIA 7.7×10-5 4.6×10-3 Solar Polar Imager (7000 m2) 35° SIA 6.4×10-4 4.7×10-2 Table 2.3: Combined NASA requirements for attitude control of Solar Cruiser and Solar Polar Imager. 15 977-2 resin. However, many different composite materials have been analyzed for use as the material component for these three booms. The material properties of this composite are listed in Table 2.4. Figure 2.5: Cross-sectional models of three boom designs used in NASA solar sail projects. Note that the dimensions can vary depending on the project [23]. IM7/977-2 Unitape Pre-preg E11 (GPa) E22 (GPa) v12 v23 G12 (GPa) 173 9.17 0.34 0.37 5.65 Table 2.4: Material properties for Hexcel® IM7/977-2 [23]. The mass density of Hexcel® IM7/977-2 for a similar solar sail prototype is recorded as 1780 kg/m3 [24]. It should be noted that these parameters are 16 Figure 2.6: Dimensions of the TRAC boom used in NASA solar sail projects [23]. significantly dependent on the composite material construction, and this is an estimate using the parameters disclosed from several different sources and designs. The TRAC boom design provided in Fig. 2.5 and Fig. 2.6 is modeled in Solid- works. This is used to determine the centroid and the area moment of inertia in order to approximate the axis of deformation and the magnitude of deformation of the TRAC boom for simulation. The cross-section of this model is shown in Fig. 2.7. The area moment of inertia values are given in Table. 2.5. Moments of Inertia of the Area, at the Centroid (mm4) Lxx = 717.57738 Lxy = 0.0 Lxz = 0.0 Lyx = 0.0 Lyy = 491.53865 Lyz = 0.0 Lzx = 0.0 Lzy = 0.0 Lzz = 1209.11602 Table 2.5: Area Moment of Inertia properties of the TRAC boom cross-section as modeled in Solidworks [23]. The beam is modeled in simulation as a hollow disk with outer radius equal to the distance from the centroid to the top of the web, and inner radius equal to the distance from the centroid to the bottom of the web. This resolves to an outer radius of 11.39486 mm and inner radius of 5.04486 mm. It is assumed that 17 Figure 2.7: Model of the TRAC boom cross-section in Solidworks [23]. the deformation occurs in the longitudinal direction, thus the elastic modulus of E11, Poisson’s ratio of v12, and the shear modulus of G12 from Table 2.4 is used to determine the magnitude of deformation. It is noted that the dimensions given in Fig. 2.6 are over-constrained. Fur- ther, different choices of minimum-constrained dimensions from Fig. 2.6 result in slightly different cross-section models, which results in different area moments of inertia. It is also noted that the area moment of inertia calculated in Table 2.5 using the dimensions given Fig. 2.6 are slightly different than the area moment of inertia given in [23]. In fact, the dimensions chosen to constrain the model in Fig. 2.7 are chosen such that the area moment of inertia was closest to the value given in [23]. Based on these results, it appears that the dimensions given in Fig. 2.6 have some error. However, since these values are only used to ap- proximate the necessary tension forces to achieve a particular deformation, and the error does not appear to be significant, these parameters given by [23] are 18 still used for the simulation. In particular, the moment of inertia and material property values given by [23] are used in conjunction with the approximated outer radius of 11.39486 mm and inner radius of 5.04486 mm. The boom lengths are calculated using the mission criteria of 1650 m2 sail area and 7000 m2 sail area for Solar Cruiser and Solar Polar Imager, respectively. Assuming the sail is a perfect square, and thus each triangular component of the sail between two booms is a 45-45-90 triangle, the boom lengths can be calculated using the equation L = √ A√ 2 , (2.3) where L is the boom length and A is the sail area. This resolves to a boom length of ∼28.72 m and ∼59.16 m for Solar Cruiser and Solar Polar Imager, respectively. These are rounded to 29 m and 59 m for simplicity. It is established that the SRP force acting on a sail at 1 astronomical unit (AU) can be approximated using the expression F ≈ ηPA cos2(α), (2.4) where η ≈ 1.8 is the overall sail thrust coefficient, P = 4.563× 10−6 N/m2 is the SRP constant at 1 AU, A is the solar sail area, and α is the SIA[25]. However, to analyze the properties of a particular material, a more complete force model must be defined. This model is derived from the assumption that photons can either be absorbed, specularly reflected, or diffusely reflected, such that 1 = ρa + ρs + ρd, (2.5) where ρa is the fraction of photons that are absorbed, ρs is the fraction of photons that are specularly reflected, and ρd is the fraction of photons that are diffusely reflected [25]. This is known to be a valid assumption for Aluminum front-coated sails, where photon transmission drops to less than 1% for Aluminum coating of 19 40 nm [26]. Then the expression for the SPR force can be modeled as F = Fnn+ Ftt, (2.6) where Fn is the normal component of the SRP force, n is the unit vector normal to the surface of the sail, Ft is the transverse component of the SRP force, and t is a unit vector transverse to the surface of the sail [25]. The expression for the normal force and the transverse force are given as Fn = PA[(1 + ρs) cos 2(α) + 2 3 ρd cos(α)], (2.7) Ft = PA(1− ρs) cos(α) sin(α). (2.8) Different sail materials also have particular optical and thermal characteristics that can affect the SRP force on the sail. Typical sails also use different materials on the front and the back in order to optimize for reflectivity and emissivity, respectively. Considering these factors, the expressions for the normal component and the transverse component of the SRP force are Fn = PA[(1+ rs) cos 2(α)+Bfr(1−s) cos(α)+ efBf − ebBb ef + eb (1− r) cos(α)], (2.9) Ft = PA(1− rs) cos(α) sin(α), (2.10) where r is the reflectivity of the front surface, s is the specular reflection coefficient, Bf and Bb are the non-Lambertian coefficients for the front and back surfaces, and ef and eb are the front and back surface emission coefficients [25]. The material properties of the sail for NEA Scout are published and are used in the force analysis for this thesis. The NEA Scout sail is made of 2.5 µm CP1 Polyimide coated with 100 nm Al on the front and uncoated on the back [27]. The material properties are given in Table 2.6. Finally, the cable radius of the CDCM is selected to be 2.0 cm for both Solar Cruiser and Solar Polar Imager. This is slightly less than double the radius of 20 Coefficient r s Bf Bb ef eb Value 0.88 0.89 0.79 0.67 0.025 0.27 Table 2.6: Material properties for for the NEA Scout Sail [27]. the boom from the centroid to the tip of the boom web. Ideally, this cable ra- dius should be as small as possible in order to integrate easily with the existing NASA boom designs. However, this comes with a trade-off of larger cable tension requirements, and thus larger power draw. To illustrate this, the lateral boom deflection is plotted with respect to the applied cable tension for particular cable radii and is shown in Fig. 2.8. From these plots, it is clear that a larger cable radius results in a larger lateral boom deflection for a particular cable tension setpoint. (a) (b) Figure 2.8: Lateral boom deflection vs. cable tension for the chosen disk radii of 2 cm, 4 cm, 6 cm, 8 cm, and 10 cm. The plots include the boom deflection for (a) Solar Cruiser and (b) Solar Polar Imager. 21 2.5 Simulation Results NASA requires a design margin such that the theoretical maximum attitude con- trol torque is double the torque requirements outlined in Table 2.3, the designated maximum operating point of the sail. This allows for more flexibility in the solar sail operation and a larger margin for error. Reflecting these requirements, the simulation is run to determine the minimum beam deflection to achieve double the torque requirements. 2.5.1 Pitch/Yaw Torque Simulation Results This simulation conducts a sweep across a minimum and a maximum cable tension to determine the lateral beam deflection for each cable tension. This is done by breaking the beam up into 580 finite elements that describe the position of equally spaced points along the beam. For each simulated boom deflection, the sail is broken into trapezoids, for which each trapezoid’s contribution to the overall torque generation is calculated. The trapezoids are defined with height equal to the difference between consecutive spaced points, and side lengths equal to the sail length in the direction of the non-deflected boom, or normal to the deflected boom, at the chosen spaced points. Similar to the work completed by the senior design team, this analysis utilized the constant curvature subsegment (CCsub) method for analyzing the deformation of the beam. The clock angle is an important consideration when quantifying the magnitude of attitude control that is feasible for the sail. In this thesis, clock angle is defined as the rotation of the sun about the normal axis of the sail with respect to the deflected beam. In particular, a clock angle of zero degrees indicates the sun is directly aligned with the beam axis of deformation, while a clock angle of ninety degrees indicates the sun is directly perpendicular to the beam axis of deforma- tion. The analysis is conducted for clock angles of zero degrees and ninety degrees since these clock angles indicate the orientations that provide the maximum and minimum attitude control authority for an ideal sail. In this case, it is assumed 22 the sail has no effects of billowing or thermal expansion, and the sail deforma- tion along the beam axis of deformation is equal to the magnitude of the beam deformation. However, care should be taken when considering non-ideal sails, or when operating in ways not outlined in this thesis (such as applying torsional and lateral deformation simultaneously). In addition, further analysis is conducted for stabilization control only, rather than full attitude control. For stabilization con- trol, the design goal is to cancel any disturbance in the system and actuate the sail orientation back to equilibrium. These disturbances could be from many sources, but two of the most likely are non-idealities in the sail and unwanted bending or flexing of the boom. Since the maximum theoretical actuation is achieved when the sun is at a clock angle of zero degrees, it is assumed that the maximum dis- turbance also occurs when the sun is aligned with this axis. Thus, for this case, only a clock angle of zero degrees is analyzed. Pitch/Yaw Simulation Results for Attitude Control Utilizing these changes to the model, the torque generated with respect to cable actuation for the TRAC boom is plotted in Figs. 2.9 and 2.10. These figures illustrate the pitch/yaw torque generated with respect to cable actuation for Solar Cruiser and Solar Polar Imager, respectively. Each of these plots assumes 20 distinct beam element disks for cable routing. Notably, the torque generated in Figs. 2.9a, 2.9b, 2.10a, and 2.10b assume only a single boom deformation at a time, whereas Figs. 2.9c and 2.10c assume both booms along the same axis deform at the same angle. This is because, for 0° SIA and for 35° SIA and 90° clock angle, torque generation for two booms of equal deformation would cancel out. However, when the SIA is described along the axis of deformation, i.e. for 0° clock angle, the torque generated can be increased by deforming both booms along the same axis. In particular, the ideal orientation of the two booms to achieve maximum torque generation would have one boom oriented normal to the SRP, such that its effective SIA is reduced to zero, while the other is deformed such that the boom is aligned with the SRP. For 0° SIA or 23 (a) (b) (c) Figure 2.9: Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2.0 cm cable radius and 85 N of maximum tension. The plots include the torque generated at (a) 0° SIA, (b) 35° SIA at 90° clock angle, and (c) 35° SIA at 0° clock angle. 24 (a) (b) (c) Figure 2.10: Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2.0 cm cable radius and 67 N of maximum tension. The plots include the torque generated at (a) 0° SIA, (b) 35° SIA at 90° clock angle, and (c) 35° SIA at 0° clock angle. 25 when the SIA is described normal to the axis of deformation, both of the booms are already normal to the SRP. Thus, only one boom should be deformed in order to achieve maximum torque generation in this case. The required lateral boom deformation to achieve double the torque require- ments in Table 2.3 is also recorded. The simulation requires a cable tension setpoint in order to generate the corresponding deformation, and this process is not invertible. These results are instead recorded for a sweep of cable tension setpoints, and the exact boom deformation required for the torque requirement is obtained through linear interpolation of the results of the sweep. Thus, the re- quired boom deformation to meet the torque requirements is close but not exact. These results are recorded in Table 2.7. Spacecraft Applied Cable Tension (N) Cable Length Displacement (m) Boom Displacement (m) Solar Cruiser 84.5198 0.0123 8.0087 Solar Polar Imager 66.6000 0.0233 25.0591 Table 2.7: Cable tension, cable length displacement, and boom displacement re- quired for attitude control to achieve double the NASA pitch/yaw torque require- ments in Table 2.3. The beam deformation required to achieve the maximum torques shown in Figs. 2.9 and 2.10 is achieved by applying cable tensions of 85 N and 67 N, respectively. The beam deformation for Solar Cruiser and Solar Polar Imager that achieves these forces is illustrated in Fig. 2.11. 26 (a) (b) Figure 2.11: Maximum beam deformation required for attitude control in Fig. 2.9 and Fig. 2.10. The plots include the deformation for (a) the Solar Cruiser boom with 85 N of force and (b) the Solar Polar Imager boom with 67 N of force. Pitch/Yaw Torque Simulation Results for Stabilization Control Figs. 2.12 and 2.13 illustrate the beam deformation required if only stabilization of the sail is desired. This assumes that the clock angle with the largest magnitude of actuation is also the clock angle with the largest magnitude of disturbance forces. Thus, only the zero clock angle is considered in this analysis. This simulation is constructed using a TRAC boom cross-section with beam radius as in Fig. 2.7 and material properties and area moment of inertia given in [23]. Each of these plots assumes 20 distinct beam element disks for cable routing. The required lateral boom deformation to achieve double the torque require- ments in Table 2.3 is also recorded for the stabilization control simulation. As before, these results are recorded for a sweep of cable tension setpoints, and the exact boom deformation required for the torque requirement is obtained through linear interpolation of the results of the sweep. Thus, the required boom defor- mation to meet the torque requirements is close but not exact. These results are recorded in Table 2.8. The beam deformation required to achieve the maximum torques shown in Figs. 2.12 and 2.13 is achieved by applying cable tensions of 34 N and 17 N, 27 (a) (b) Figure 2.12: Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2.0 cm cable radius and 34 N of maximum tension. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA at 0° clock angle. (a) (b) Figure 2.13: Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2.0 cm cable radius and 17 N of maximum tension. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA at 0° clock angle. 28 Spacecraft Applied Cable Tension (N) Cable Length Displacement (m) Boom Displacement (m) Solar Cruiser 32.4776 0.0045 3.1327 Solar Polar Imager 15.8028 0.0046 6.3643 Table 2.8: Cable tension, cable length displacement, and boom displacement re- quired for stabilization control to achieve double the NASA pitch/yaw torque requirements in Table 2.3. respectively. The beam deformation for Solar Cruiser and Solar Polar Imager that achieves these forces is illustrated in Fig. 2.14. (a) (b) Figure 2.14: Maximum beam deformation required for stabilization control in Fig. 2.12 and Fig. 2.13. The plots include the deformation for (a) the Solar Cruiser boom with 34 N of force and (b) the Solar Polar Imager boom with 17 N of force. 2.5.2 Roll Torque Simulation Results For cables that are threaded helically, an applied cable tension induces boom twist rather than lateral boom deflection. If each of the four booms is twisted in an equal manner, this induces a roll torque to the spacecraft. Although the simulation derived from [20] is not designed for torsional boom deformation, this 29 can be modeled using certain assumptions. The code developed by the Senior Design team at the University of Minnesota assumes that each boom is rotated by a particular angle. This model further assumes the sail is only connected to a spreader at the tips of the booms as well as at the center of the spacecraft. Thus, when the booms are twisted, the sail forms four triangles rotated about the satellite’s normal axis. This sail deformation is analogous to a pinwheel shape. However, one limitation of this model is the assumption of only three connection points for each triangular sail component. The work of the Senior Design team was expanded in a similar manner to the lateral deformation analysis. Rather than assuming the sail is only connected at three points, it is instead assumed that the sail is connected at a constant cable radius along the entire beam. Instead of assuming the beam is rotated by a fixed amount, the beam is analyzed using a fixed number of finite elements. It is further assumed that the beam’s rotation angle increases linearly, and the rotation does not change between each finite element. Thus, the sail is broken up into planar trapezoids, each of which induces a nominal torque to the spacecraft. The results of both of these two methods are shown. Simplified Roll Torque Simulation Results The simplified roll torque generation model assumes a boom twist that is equal across the entire boom. Further, the sail is assumed to only be attached at the end-effector of each beam. It is also noted that this torque is achieved by twisting all four booms equally and in the same direction. The results of this roll torque model are shown in Figs. 2.15 and 2.16. The torque generated in Figs. 2.15 and 2.16 assumes a spreader length of 15 cm for Solar Cruiser and 60 cm for Solar Polar Imager. In both cases, this means the spreader would have to be much larger than the radius of the cables threaded along the beam. However, the cable radius could instead be increased if continuity is desired between the disk radius and the spreader length. This would also increase the potential pitch/yaw torque that can be generated. 30 (a) (b) Figure 2.15: Roll torque generated from boom twist for Solar Cruiser with a 15 cm spreader length. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA. (a) (b) Figure 2.16: Roll torque generated from boom twist for Solar Polar Imager with a 60 cm spreader length. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA. 31 In addition, the particular boom twist that achieves double the NASA re- quirement for roll torque generation is given in Table 2.9. Note that this value is subject to the choice of spreader length, and can be increased or decreased as a design parameter choice. Spacecraft Boom Twist Needed (degrees) Solar Cruiser 5.9 Solar Polar Imager 4.6 Table 2.9: Boom twist required to achieve double the NASA roll torque require- ments in Table 2.3. Trapezoidal Roll Torque Simulation Results While the previous method assumed the sail is only connected at the central satellite hub and the two closest beams, a real solar sail is typically attached to the beams of the spacecraft at equally spaced intervals of a fixed distance. When the beams are composed of individual CDCM robots, it seems appropriate to follow a similar approach and attach the sail along the disk elements. As a result, it is important to consider the intermediate rotation of the beam. For this analysis, it is assumed the beam rotation increases linearly. To ac- complish this, the beam is broken into 580 finite elements that describe the rotation of equally spaced points along the beam. These results are shown in Figs. 2.17 and 2.18. In addition, the particular boom twist that achieves double the NASA re- quirement for roll torque generation is given in Table 2.10. Note that this value is subject to the choice of spreader length, and can be increased or decreased as a design parameter choice. 32 (a) (b) Figure 2.17: Roll torque generated from boom twist for Solar Cruiser with a 15 cm spreader length using the finite element trapezoid method. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA. (a) (b) Figure 2.18: Roll torque generated from boom twist for Solar Polar Imager with a 60 cm spreader length using the finite element trapezoid method. The plots include the torque generated at (a) 0° SIA and (b) 35° SIA. 33 Spacecraft Boom Twist Needed (degrees) Solar Cruiser 5.8 Solar Polar Imager 4.5 Table 2.10: Boom twist required to achieve double the NASA roll torque require- ments in Table 2.3 using the trapezoidal method. 2.5.3 Propulsion Force Losses Discussion and Simulation Results It is important to note that as the solar sail boom deformation increases, the propulsive force decreases proportionally. This is because the component of the SRP force normal to the sail decreases. This decrease in propulsive force is plotted with respect to cable actuation length in Figs. 2.19 and 2.20 for lateral deforma- tions to the beam, and with respect to boom twist in Figs. 2.21 and 2.22 for torsional deformations to the beam. In all cases, the loss in propulsive force is relatively small. Overall, this is advantageous to this attitude control design since the propulsive force losses are small within the mission criteria for both Solar Cruiser and Solar Polar Imager. Additional figures are included in Appendix A. In particular, the roll, pitch, and yaw torques are calculated for a simulated CTM beam whose cross-section is given in Fig. 2.5. 34 (a) (b) (c) Figure 2.19: Propulsion (normal) force with respect to lateral cable actuation for Solar Cruiser. The plots include the propulsive force on the sail at (a) 0° SIA, (b) 35° SIA at 90° clock angle, and (c) 35° SIA at 0° clock angle. 35 (a) (b) (c) Figure 2.20: Propulsion (normal) force with respect to lateral cable actuation for Solar Polar Imager. The plots include the propulsive force on the sail at (a) 0° SIA, (b) 35° SIA at 90° clock angle, and (c) 35° at 0° clock angle. 36 (a) (b) Figure 2.21: Propulsion (normal) force with respect to torsional cable actuation for Solar Cruiser using the trapezoid method. The plots include the propulsive force on the sail at (a) 0° SIA and (b) 35° SIA. (a) (b) Figure 2.22: Propulsion (normal) force with respect to torsional cable actuation for Solar Polar Imager using the trapezoid method. The plots include the propulsive force on the sail at (a) 0° SIA and (b) 35° SIA. 37 2.6 Closing Remarks The results of this chapter confirm the feasibility of the CABLESSail concept. It was shown that the CABLESSail concept was capable of providing double the NASA mission requirements for all cases. It also provides bounds for the design parameters of the CDCM. In particular, it provides the cable tension requirements of 0 N to 85 N for the TRAC boom design. Finally, the simulation developed in this chapter will be utilized in the following chapters for deriving the forward kinematics of the CDCM as well as for developing models of the CABLESSail prototype. The results of this section are also limited in several ways. The propensity for buckling was not modeled in this simulation, so it was not clear whether the TRAC boom could support the loads derived in this chapter. Further, several as- sumptions were made about the TRAC boom model as well as the sail properties. It is understood that there are many different variations of the TRAC boom con- cept, which means the analysis in this chapter was limited to the chosen iteration. However, this chapter was structured in such a way that, given the same material properties of a different sail and boom, the same analysis could be conducted on a different model in order to derive the same parameters. This will be utilized in the following chapters to model the prototype CDCM. Chapter 3 Deriving the Forward Kinematics of the Cable-Driven Continuum Manipulator 3.1 Introduction Forward kinematics is defined as the process of obtaining the pose of an end- effector given the joint angles of a robot. For the CDCM, this definition can be extended to describe the pose achieved given particular motor torques and/or cable lengths. Since the CDCM is a complex, nonlinear robot, deriving these kinematics is particularly difficult. However, the forward kinematics of the CDCM are a necessary component of the development of the CABLESSail prototype. Several methods exist to compute the forward kinematics accurately, but these methods are typically computationally expensive and are therefore not feasible to run in real-time in a low resource environment such as a satellite. Therefore, methods must be derived to approximate the forward kinematics accurately and efficiently. Three different approaches are implemented to derive this relationship for the 38 39 CDCM. The first approach is a simple polynomial fit function. The second ap- proach is the equilibrium solution to a cantilever beam derived using the assumed modes method. The final approach implements a neural network to learn this relationship. In each of these three approaches, the beam is modeled after the TRAC boom in [23]. 3.2 Polynomial Fitting for the Forward Kinematics of the CDCM The simplest method for finding the end-effector pose of the CDCM is to solve the end-effector solutions given a sequence of cable tension set points. Then, finding the polynomial of best fit for this data results in a function that can be used to easily predict the end-effector pose for any cable tension. To generate this data, the code developed by [20] is again used with the beam properties of the TRAC boom cross-section and zero gravitational acceleration. The beam of the CDCM is modeled according to the Solar Cruiser design. Specifically, the beam is modeled as a 29 m TRAC boom, the beam radius is modeled from Fig. 2.7 and the material properties and area moment of inertia are given from [23]. The cable radius is selected to be 2 cm. Each of these plots assumes 20 distinct beam element disks for cable routing. Unlike the simulations in Chapter 2, the polynomial fitting method in this section utilizes a pseudo-rigid body method of analysis. This method is used to more accurately model compliant/flexing bodies. This was also implemented by [20] for CDCM deformation analysis, and their code is modified for the analysis in this section. For the CDCM, the pseudo-rigid body analysis should return more accurate results but generally takes longer to compute this result. This is ideal for polynomial fitting, where the polynomial function should be as accurate as possible. Further, the longer computation time is not a drawback as once the polynomial function is fitted to the data, the model is no longer needed. 40 In order to find the optimal polynomial of best fit for the forward kinematics of the CDCM, two design characteristics must be considered. The first is the order of the polynomial. In general, a higher-order function better fits to existing data, but generalizes worse to new data. This is the phenomenon known as over-fitting. In order to avoid over-fitting, this analysis derives polynomials of orders 1 through 6, and compares the results to additional randomly generated data from the same pseudo-rigid body model. The second is the method of generating data for curve fitting. The most straightforward method is to simply generate uniformly spaced data between the bounds of interest. However, an alternative method is found by utilizing Chebyshev nodes, or the roots of the Chebyshev polynomials of the first kind. Each of these results is applied to 500 randomly generated data points, and the results of each of these methods are compared. 3.2.1 Polynomial Fitting for the Forward Kinematics of the CDCM using Uniformly Spaced Data As discussed, the most straightforward method for generating data for polynomial fitting is to generate uniformly spaced data within the desired interval. As shown in Section 2.5.1, the maximum cable tension needed is 85 N, so the polynomial function is fitted to a single cable CDCM that can operate between 0 N and 85 N. Each data point is spaced at 0.25 N intervals between 0 N and 85 N. The pose is represented as a 7 index array, including the position and the quaternion of the end-effector of the boom. The cable length is also recorded in each simulation result. The change in cable length is thus calculated by subtracting the known cable length at equilibrium from the cable length calculated in each simulation iteration. Finally, the sign of the change in cable length is flipped to ensure a positive change in cable length corresponds to a positive end-effector displacement. The independent variables can be either the cable tension or the change in cable length. This results in a total of 14 different polynomial functions. However, since the boom is only deflected along a single axis, one of the position axes and two of 41 the quaternion axes remain zero for any boom deflection and cable tension. This reduces the total number of polynomials to 8 for each polynomial order. The R2 values of each of these functions, as well as the root mean square error (RMSE) of the function applied to random data, are shown in Tables 3.1 and 3.2, respectively. Polynomial Order Function Order 1 Order 2 Order 3 Order 4 Order 5 Order 6 x1 (m) vs. cable tension (N) 0.9985 1.0000 1.0000 1.0000 1.0000 1.0000 x1 (m) vs. ∆ cable length (m) 0.9981 1.0000 1.0000 1.0000 1.0000 1.0000 x3 (m) vs. cable tension (N) 0.9073 0.9993 1.0000 1.0000 1.0000 1.0000 x3 (m) vs. ∆ cable length (m) 0.9494 0.9998 1.0000 1.0000 1.0000 1.0000 qw vs. cable tension (N) 0.9055 0.9992 1.0000 1.0000 1.0000 1.0000 qw vs. ∆ cable length (m) 0.9480 0.9998 1.0000 1.0000 1.0000 1.0000 qy vs. cable tension (N) 0.9978 1.0000 1.0000 1.0000 1.0000 1.0000 qy vs. ∆ cable length (m) 0.9987 1.0000 1.0000 1.0000 1.0000 1.0000 Table 3.1: R2 values of the polynomial fit function applied to uniformly spaced data. The results in Tables 3.1 and 3.2 show that the polynomial fit functions gen- erated from uniformly spaced data are effective at approximating the equilibrium position and rotation of the boom. As the R2 value of a fit function is a representa- tion of its goodness-of-fit, the values of near 1 for all trials indicate a near-perfect goodness-of-fit. It is also clear that nearly all trials showed better results by se- lecting the change in cable length as the independent variable rather than cable 42 Polynomial Order Function Order 1 Order 2 Order 3 Order 4 Order 5 Order 6 x1 (m) vs. cable tension (N) 0.1046 0.0029 0.0009 0.0001 0.0000 0.0000 x1 (m) vs. ∆ cable length (m) 0.1197 0.0015 0.0004 0.0000 0.0000 0.0000 x3 (m) vs. cable tension (N) 0.1962 0.0175 0.0011 0.0000 0.0000 0.0000 x3 (m) vs. ∆ cable length (m) 0.1463 0.0103 0.0004 0.0000 0.0000 0.0000 qw vs. cable tension (N) 0.0052 0.0005 0.0000 0.0000 0.0000 0.0000 qw vs. ∆ cable length (m) 0.0039 0.0002 0.0000 0.0000 0.0000 0.0000 qy vs. cable tension (N) 0.0044 0.0001 0.0000 0.0000 0.0000 0.0000 qy vs. ∆ cable length (m) 0.0034 0.0000 0.0000 0.0000 0.0000 0.0000 Table 3.2: RMSE values of the polynomial fit function generated from uniformly spaced data applied to randomly generated data. 43 tension. This is advantageous because the cable length is easily measured by an encoder attached to a motor that actuates on the cables. The polynomial of or- der 3 is selected as it is the lowest order polynomial with an R2 value of 1.0000. This keeps the function relatively simple while still retaining a high degree of accuracy. The exact polynomial functions are given in Table 3.3. Function Equation x1 (m) vs. ∆ cable length (m) x1 = −2.0611 × 104l3 − 6.3121 × 103l2 + 726.6426l − 0.0011 x3 (m) vs. ∆ cable length (m) x3 = 1.4596 × 105l3 − 1.1632 × 104l2 − 1.4949l + 29.0011 qw vs. ∆ cable length (m) qw = 3.4242×105l3−298.2675l2−0.0457l+ 1.0000 qy vs. ∆ cable length (m) qy = 427.1131l 3 − 204.8282l2 + 25.0148l − 1.0116× 10−5 Table 3.3: Functions representing the equilibrium solution for the CDCM pose vs. cable length. Although the polynomial function is designed to have either the change in cable lengths or the cable tensions as the independent variable, the PRB model only accepts cable tensions as an input. Thus, the cable lengths are generated from the output of this model, and may not follow a uniform distribution. Despite this, the cable lengths polynomials performed better on the randomly generated data points. Thus, the validity of the cable lengths polynomial function is confirmed. 3.2.2 Polynomial Fitting for the Forward Kinematics of the CDCM using Chebyshev Nodes The Chebyshev nodes, also known as the roots of the Chebyshev polynomials of the first kind, are a sequence of data that minimizes Runge’s Phenomenon. Runge’s Phenomenon is the problem of poor polynomial fitting, often in the form of oscillations and often near the extrema of the data. This is illustrated in Fig. 3.1. 44 Figure 3.1: Illustration of Runge’s Phenomenon, and the advantage of Chebyshev interpolation (CIP) over other interpolation methods. In this case, Lagrange interpolation (LIP) [28]. It is proven that for n data points in the range (−1, 1), the Chebyshev nodes produce the unique polynomial of order n that minimizes the error within these bounds. Given the interval (−1, 1), and a number of nodes n, the Chebyshev nodes are defined as xk = cos ( 2k − 1 2n π), k = 1, 2, ..., n. (3.1) This can be extended to any interval using an affine transformation. This results in a modified definition for the Chebyshev nodes. For the data in the interval (a, b), the modified Chebyshev nodes equation is given by xk = 1 2 (a+ b) + 1 2 (b− a) cos (2k − 1 2n π), k = 1, 2, ..., n. (3.2) For this analysis, the same PRB model is used as in the previous section. This means the beam is modeled according to the TRAC boom and is operated between cable tensions of 0 N and 85 N. The same number of nodes are used in this analysis as in the uniformly spaced nodes analysis in order to maintain continuity. In total, this means there are 341 nodes. The Chebyshev nodes are 45 generated according to Eq. (3.2), where the bounds are the cable tension limits of 0 N and 85 N. As before, the change in cable length is calculated for each simulation. Both cable tensions and change in cable length are analyzed using a polynomial fit. The R2 values of each of these functions, as well as the root mean square error (RMSE) of the function applied to random data, are shown in Tables 3.4 and 3.5, respectively. Polynomial Order Function Order 1 Order 2 Order 3 Order 4 Order 5 Order 6 x1 (m) vs. cable tension (N) 0.9986 1.0000 1.0000 1.0000 1.0000 1.0000 x1 (m) vs. ∆ cable length (m) 0.9982 1.0000 1.0000 1.0000 1.0000 1.0000 x3 (m) vs. cable tension (N) 0.9151 0.9994 1.0000 1.0000 1.0000 1.0000 x3 (m) vs. ∆ cable length (m) 0.9540 0.9998 1.0000 1.0000 1.0000 1.0000 qw vs. cable tension (N) 0.9135 0.9993 1.0000 1.0000 1.0000 1.0000 qw vs. ∆ cable length (m) 0.9528 0.9998 1.0000 1.0000 1.0000 1.0000 qy vs. cable tension (N) 0.9980 1.0000 1.0000 1.0000 1.0000 1.0000 qy vs. ∆ cable length (m) 0.9988 1.0000 1.0000 1.0000 1.0000 1.0000 Table 3.4: R2 values of the polynomial fit function applied to data generated from the Chebyshev node distribution. The results in Tables 3.4 and 3.5 show that the polynomial fit functions gener- ated from the Chebyshev node distribution are also effective at approximating the equilibrium position and rotation of the boom. As the R2 value of a fit function is a representation of its goodness-of-fit, the values of near 1 for all trials indicate a near-perfect goodness-of-fit. As with the uniformly distributed data simulation, 46 Polynomial Order Function Order 1 Order 2 Order 3 Order 4 Order 5 Order 6 x1 (m) vs. cable tension (N) 0.1222 0.0035 0.0010 0.0001 0.0000 0.0000 x1 (m) vs. ∆ cable length (m) 0.1408 0.0018 0.0005 0.0001 0.0000 0.0000 x3 (m) vs. cable tension (N) 0.2310 0.0211 0.0013 0.0001 0.0000 0.0000 x3 (m) vs. ∆ cable length (m) 0.1712 0.0122 0.0005 0.0000 0.0000 0.0000 qw vs. cable tension (N) 0.0061 0.0006 0.0000 0.0000 0.0000 0.0000 qw vs. ∆ cable length (m) 0.0045 0.0003 0.0000 0.0000 0.0000 0.0000 qy vs. cable tension (N) 0.0052 0.0001 0.0000 0.0000 0.0000 0.0000 qy vs. ∆ cable length (m) 0.0040 0.0000 0.0000 0.0000 0.0000 0.0000 Table 3.5: RMSE values of the polynomial fit function generated from the Cheby- shev node distribution applied to randomly generated data. 47 nearly all trials showed better results by selecting change in cable length as the in- dependent variable rather than cable tension. As before, the polynomial of order 3 is selected as it is the lowest order polynomial with an R2 value of 1.0000. This keeps the function relatively simple while still retaining a high degree of accuracy. The exact polynomial functions are given in Table 3.6. Function Equation x1 (m) vs. ∆ cable length (m) x1 = −2.0420 × 104l3 − 6.3048 × 103l2 + 726.4877l − 6.0815× 10−4 x3 (m) vs. ∆ cable length (m) x3 = 1.4560 × 105l3 − 1.1635 × 104l2 − 1.3612l + 29.0006 qw vs. ∆ cable length (m) qw = 3.4157×103l3−298.4230l2−0.0415l+ 1.0000 qy vs. ∆ cable length (m) qy = 427.7693l 3 − 204.7419l2 + 25.0132l − 4.3566× 10−6 Table 3.6: Functions representing the equilibrium solution for the CDCM pose vs. cable length using the Chebyshev node distribution. Although the polynomial function is designed to have either the change in cable lengths or the cable tensions as the independent variable, the PRB model only accepts cable tensions as an input. Thus, the cable lengths are generated from the output of this model, and may not follow a Chebyshev node distribution. Both choices of independent variables are tested using 500 randomly generated data points. As the polynomial functions using the change in cable lengths had both higher R2 and lower RMSE values, the accuracy of the cable length polynomial function is confirmed. 3.2.3 Polynomial Fitting Discussion Based on the results of the polynomial fitting for both the uniformly distributed data and the Chebyshev nodes, one might conclude that the uniformly distributed interpolation polynomials perform better than the Chebyshev interpolation poly- nomials. Although the Chebyshev interpolation polynomials in general had better 48 R2 values, the RMSE values of the uniformly distributed interpolation polynomials are smaller. This would seem to indicate that the uniformly distributed interpola- tion polynomials would perform better on unseen data. However, it is shown that this result is somewhat misleading. An extension of the Chebyshev node func- tion is proposed, which is used to generate random data according to the same distribution. This is shown in Eq. (3.3). xk = 1 2 (a+ b) + 1 2 (b− a) cos (u(x) 2 π), (3.3) where u(x) is the continuous uniform random distribution between (0,1), with probability density function given by u(x) = 1 for x ∈ (0, 1)0 otherwise . (3.4) Sampling from this continuous uniform distribution yields data that is distributed between (a,b) according to the Chebyshev distribution extended to continuous time i.e. with infinite nodes. This data is then used in the PRB model to generate equilibrium pose solutions. This is useful as an indicator of the accuracy of the polynomial fit functions with preference towards the extrema. Generating 500 random data using the sampling method in Eq. (3.3), the RMSE values of the uniformly distributed and Chebyshev interpolation polyno- mials are compared for the polynomials of orders 1 to 3. These results are shown in Table 3.7. The RMSE values calculated from the Chebyshev random distribution show better performance for the Chebyshev interpolation polynomials compared to the uniform random distribution. Furthermore, the RMSE values for the Chebyshev interpolation in Tables 3.5 and 3.7 are approximately the same, whereas the RMSE values for the uniformly distributed interpolation in Table 3.7 are larger than any other RMSE data. This indicates that the uniformly distributed interpolation 49 Uniform Data Chebyshev Data Function Order 1 Order 2 Order 3 Order 1 Order 2 Order 3 x1 (m) vs. cable tension (N) 0.1418 0.0042 0.0013 0.1290 0.0036 0.0011 x1 (m) vs. ∆ cable length (m) 0.1626 0.0021 0.0006 0.1488 0.0018 0.0005 x3 (m) vs. cable tension (N) 0.2683 0.0249 0.0016 0.2450 0.0217 0.0013 x3 (m) vs. ∆ cable length (m) 0.1977 0.0146 0.0006 0.1807 0.0126 0.0005 qw vs. cable tension (N) 0.0071 0.0007 0.0001 0.0065 0.0006 0.0000 qw vs. ∆ cable length (m) 0.0052 0.0003 0.0000 0.0048 0.0003 0.0000 qy vs. cable tension (N) 0.0060 0.0001 0.0000 0.0055 0.0001 0.0000 qy vs. ∆ cable length (m) 0.0047 0.0000 0.0000 0.0043 0.0000 0.0000 Table 3.7: RMSE values of the polynomial fit function generated from the Cheby- shev random distribution. polynomials are better at predicting data near the center of the distribution but worse at predicting data near the extrema. In contrast, the similar RMSE values for the Chebyshev interpolation generated from uniform random data and from the Chebyshev random distribution indicates that the Chebyshev interpolation provides the same accuracy across the entire data range - in this case, between 0 N and 85 N of cable tension. For these reasons, the Chebyshev interpolation is concluded to be the more accurate polynomial fit. Although the polynomial function is shown to have very accurate results when compared to the equilibrium pose solutions, this method does have some draw- backs. First, the implementation only considers a single cable, whereas a real CDCM would have multiple cables actuating simultaneously. Further work would 50 be needed to determine if the polynomial interpolation is still valid for a multi- variable input. Second, the polynomial only finds the equilibrium solution to the pose. This neglects the dynamics of the CDCM. As a result, using this solution in a control system may impact performance or stability. 3.3 Assumed Modes Method for the Forward Kinematics of the CDCM The assumed modes method is a numerical analysis method used to approximate the solution to a forced vibration problem using a series of basis functions [29]. These functions multiplied by the time-dependent solution to the assumed modes model provide an approximate solution to the continuous system. Explicitly, the approximate solution to the one-dimensional continuous system is given by u(x, t) = n∑ i=1 Ψi(x)qi(t) = Ψ(x)q(t). (3.5) The equations of motion for a cantilever beam can be derived using the expression given in Eq. (3.5) [30]. This derivation solves for the potential and kinetic energy of the system, then uses the Euler-Lagrange equation to describe the force applied to the beam. The Euler-Lagrange equation is defined as fB = d dt ( ∂LB ∂q˙ )⊤ − (∂LB ∂q )⊤, (3.6) where LB = TB − VB. (3.7) Here, Eq. (3.7) is the Lagrangian with kinetic energy TB and potential energy VB. The fB term is computed as the reaction force on the beam due to the cable 51 tension. Using Eq. (3.6), the equations of motion for the boom are derived as MBq¨+KBq = fB. (3.8) In Eq. (3.8), MB is the mass matrix of the system, and KB is the stiffness matrix. The analysis in [30] also includes a damping coefficient to ensure the beam does not sustain oscillations and reaches equilibrium. This is added to the equations of motion, resulting in the full expression as MBq¨+ DBq˙+KBq = fB, (3.9) where DB is the damping matrix containing the damping coefficients of the system. The equilibrium solution of the equations of motion can be easily computed by finding the value of q for q¨ = q˙ = 0. This solution can be converted to the beam deflection by plugging into Eq. (3.5). The equilibrium solution to the end- effector of the beam is defined as ueq. Although the problem is still nonlinear, this simplifies the problem significantly, albeit at the loss of the transient response. The beam and material properties are derived from the Solar Cruiser model and [23], as in Chapter 2. This provides the boom length as well as the components of the mass matrix and the stiffness matrix given in 3.9. The damping matrix is selected to be the diagonal matrix of 7×103. This is chosen so the pole frequency remains approximately the same, but the solution eventually reaches equilibrium. The results of the assumed modes plot for the end-effector of the beam, along with the equilibrium solution, are shown in Fig. 3.2. This result assumes an applied cable tension of 2 N. For these chosen parameters, the equilibrium solution is found to be 1.8450 m of deflection. While this results in an equilibrium solution to the system, this result can be further improved by finding the envelope of the oscillation decay. This can be solved by finding a function of the form y(t) = ueq + be −ct. (3.10) 52 Figure 3.2: Cantilever beam simulation plotted over time along with its equilib- rium position. The coefficients b, c can be estimated by a logarithm transformation. This trans- formation is given as yL(t) = log(y(t)− ueq) = log(be−ct) = bL − ct. (3.11) It is important to note that only values greater than zero are valid in the logarithm function. Thus, only values for which y(t) > ueq are considered. Finally, the problem can be solved using linear least squares as min bL,c 1 2 ∥bL − ct− yL(t)∥22 such that bL − ct ≥ yL(t). (3.12) Intuitively, this least squares function finds the coefficients for the linear function that is closest to the data that is also greater than the data for all time t. Using the data generated in Fig. 3.2, the coefficients bL and c are found to be 53 0.6159 and 0.0051, respectively. After transforming bL back to b, this results in the envelope function given by y(t) = 1.8450 + 1.8514e−0.0051t. (3.13) This function only plots the positive envelope of the function. For completeness, the negative envelope is given by y(t) = ueq − be−ct. (3.14) This function is solved using the same steps as the positive envelope function. For the parameters given in Fig. 3.2, this results in the equation y(t) = 1.8450 + 1.8514e−0.0050t. (3.15) Because the oscillations may not reach the same peak value for both the negative and the positive data, the more correct envelope is given by the envelope with the largest bounds. In this case, since the negative envelope decays slower, it has larger bounds. Thus, for the parameters given in Fig. 3.2, the correct envelope function is y(t) = 1.8450± 1.8514e−0.0050t. (3.16) This function is plotted over the transient response data as shown in Fig. 3.3. This result is advantageous because it provides bounds for the decay of the end-effector position. This means that, for a particular cable tension, the error bounds of the position can be given in addition to the equilibrium position. This is extremely important for a number of algorithms, such as Kalman filtering, to provide a filtered position approximation. However, it is more computationally expensive than the assumed modes algorithm, as it requires a solution using the assumed modes method in addition to solving the envelope function. As an ex- tension of this work, it may be possible to approximate the coefficients bL and c as a function of cable lengths or tensions. This would improve on the result 54 Figure 3.3: Cantilever beam simulation plotted over time along with its bounding envelope. from Section 3.2 as it would provide error bounds in addition to the equilibrium solution. It is noted that the code developed for use in the assumed modes method is a work in progress for the CABLESSail project, and thus has several limitations. The first and most significant is that the results do not match the results given in [20]. Though both make use of the design and material properties of the beam, the resulting equilibrium solutions do not match. This discrepancy would have to be solved in order to move forward with either method. Second, the damping matrix was selected arbitrarily rather than based on any data. This too would need to be modeled in order to move forward with the assumed modes method for a CABLESSail prototype. Despite these shortcomings, the results are extremely promising as a computationally efficient method of deriving the transient response of the boom. 55 3.4 Neural Network Method for the Forward Kinematics of the CDCM The neural network is the cornerstone of machine learning. It is constructed from individual “neurons” which, based on their connection, attempt to produce a desired result [31]. The most significant advantage of the neural network is its flexibility, as the neural network can be tasked to learn nearly any problem. However, neural networks may fail to achieve their desired behavior for a variety of reasons. The challenge of neural network design, therefore, is constructing the algorithm in such a way that the network accurately models the desired behavior. The neural network is constructed from layers of perceptrons, each with a particular activation function. Traditionally, a single perceptron is fed input data from the previous layer. Each of these inputs is applied a weight coefficient, and the sum of this data is computed. Finally, a non-linear activation function is applied to this sum. An illustration of the perceptron is shown in Fig. 3.4. The neural network is constructed from these individual perceptrons, where the output of one perceptron serves as the input to the next layer. The general construction of a neural network is illustrated in Fig. 3.5. This is also known as a single “neuron” in a neural network. Applying the neural network to the task of solving the forward kinematics of the CDCM is analogous to fitting a non-linear function to the CDCM pose data using regression. In the case of the neural network regression problem, the output layer does not have an activation function; rather, it simply outputs a number that represents the output of the learned function. Training a neural network involves evaluating the network according to a loss function. For a regression problem, the standard loss function is the half-mean- squared-error loss function. This is given as J(w|r, x) = 1 2 ∥r− y∥22. (3.17) 56 Figure 3.4: Illustration of a standard perceptron with an arbitrary non-linear activation function [32]. Figure 3.5: Illustration of a standard neural network with a single output [33]. 57 In Eq. (3.17), J(w|r, x) represents the error (or loss) associated with the particular weight coefficients, w, r represents the ground truth data, and y represents the prediction output by the neural network. The most standard form of neural network is the fully connected neural net- work. In this construction, every neuron in a particular layer is connected to every neuron in the following layer. In effect, every output of each neuron in one layer is an input to every neuron in the following layer. For most machine learning problems, this is the first attempted method used to learn a problem. For regres- sion problems in particular, the fully connected neural network is sufficient for accurately predicting the output of a problem. Thus, the fully connected neural network is used as the model for learning the forward kinematics of the CDCM. In general, the best activation function for a regression problem is the rectified Linear Unit (ReLU) activation function [34]. This function is defined as f(z) = max (0, z). (3.18) In recent years, the ReLU activation function has become the most common choice for activation function in standard machine learning problems [35]. The main advantage of the ReLU activation function is it avoids the vanishing gradient problem. The vanishing gradient problem is the phenomenon where, during neu- ral network training, the gradient can become very small, leading to ineffective learning in earlier layers of the network. Since the backpropagation step of train- ing relies on the gradient of the loss function to improve the neural network, a very small gradient causes the improvement to be ineffective. For this reason, the ReLU activation function is used for each of the layers for learning the forward kinematics of the CDCM. In order to compute the training update functions, the gradients associated with each weight must first be derived. These functions are given as 58 ∂J(w|rtj, xt) ∂ytj = −(rtj − ytj), (3.19) ∂ytj ∂wij,k = xtik , (3.20) ∂ytj ∂xtik = wij,k , (3.21) ∂xtij ∂wi−1j,k = xti−1k for x > 00 otherwise , (3.22) ∂xtij ∂xti−1k = wi−1j,k for x > 00 otherwise . (3.23) Definitions for the parameters in Eqs. (3.19)-(3.23) are given in Table 3.8. Symbol Description y Output predicted by the neural network r Ground-truth data x Hidden or input node, connects to other hidden nodes or the output t Index of the data i Layer of the neural network j Index of the output node k Index of the input node Table 3.8: Parameters of the neural network gradient equations given in Eqs. (3.19)-(3.23). Using the equations derived in Eqs. (3.19)-(3.23), the weight update functions can thus be expressed. For a neural network of arbitrary depth n, using the ReLU activation function and the half-mean-squared-error loss function, the gradient of a particular weight can be derived as ∂J(w|rtj ,xt) ∂wnl,m using the chain rule. Finally, the weights are updated during training using standard gradient descent, with 59 equation given by wnl,m = wnl,m − η ∂J(w|rtj, xt) ∂wnl,m . (3.24) In Eq. (3.24), η is a tunable learning rate that determines how much the weights change each iteration. The learning rate is set to 0.0001 from experimental obser- vation. While the overall structure of the neural network has been established, the exact parameters to optimize the network for the task of predicting the forward kinematics still need to be determined. For this analysis, neural networks with depths of 1-6 are trained to determine the optimal layer depth. Further, each neural network is tested with 10 and 100 nodes per layer. In addition, each of the neural networks is trained on the same data multiple times. This is known as an epoch. For each neural network, epochs of 1, 51, 101, 251, and 501 are tested. Data was generated using the PRB function developed by [20] with parameters selected according to the Solar Cruiser model and with material properties of the TRAC boom as given by [23]. In this construction, the CDCM had two direct threaded cables in order to provide lateral deformation in one axis. The inputs to this system are the combined vector of cable lengths and cable tensions. As with the model in Section 3.2, the outputs are the position and quaternion of the pose. Two different methods are used to generate the four cable tensions. The first method used a uniform random distribution on the interval (0 N, 85 N), which was established as the necessary bounds of operation for the TRAC boom. The second method used the Chebyhsev random distribution established by Eq.(3.3). One million sets of four cable tensions are generated according to each of these random distributions. Nine hundred thousand of these data points are used to train the neural network, while one hundred thousand data points are used for validation. These results are compared for each of the parameters. Across all of these configurations, there are a total of 100 different neural network constructions. The average RMSE value for each of these parameters is provided. First, the average RMSE for each variation of epoch is recorded. This 60 is shown in Table 3.9. Next, the average RMSE for each variation of layers is recorded. This is shown in Table 3.10. Following this, the average RMSE for each variation of nodes per layer is recorded. This is shown in Table 3.11. Finally, the neural networks generated according to the uniform random distribution and the Chebyhsev distribution are compared. As with the results in Section 3.2, each of the sets of neural networks can be compared to ground-truth data that is generated according to the uniform random distribution and the Chebyshev random distribution. In total, this provides four different average RMSE values. These are given in Table 3.12. Number of Epochs Average Pose RMSE 1 6.5219 51 1.0729 101 0.8350 251 0.6655 501 0.5205 Table 3.9: Average RMSE of the pose with respect to the number of epochs. Number of Layers Average Pose RMSE 1 2.1337 2 3.1392 3 1.4182 4 1.4146 5 1.5102 Table 3.10: Average RMSE of the pose with respect to the number of layers. Number of Nodes per Layer Average Pose RMSE 10 2.5421 100 1.3042 Table 3.11: Average RMSE of the pose with respect to the number of layers. 61 Validation Data Distribution Training Data Distribution Uniform Random Validation Data Chebyshev Random Validation Data Uniform Random Training Data 2.0507 2.1697 Chebyshev Random Training Data 1.6880 1.7844 Table 3.12: Average RMSE of the pose with respect to the method of data gen- eration. It is observed that the neural networks that were trained with fewer epochs had bad overall performance. Thus, these results are affected by the random ini- tialization of the network more than neural networks that were trained with more epochs. To get a more accurate comparison of the performance of the Chebyshev random and the uniform random neural networks, the average RMSE is recorded for the number of layers, number of nodes per layer, and method of data sampling, but only considering neural networks with training epochs of 101, 251, and 501. These results are shown in Tables 3.13, 3.14, and 3.15. Number of Layers Average Pose RMSE 1 0.4661 2 2.0593 3 0.2152 4 0.2498 5 0.3779 Table 3.13: Average RMSE of the pose with respect to the number of layers, considering only epochs 101, 251, and 501. Number of Nodes per Layer Average Pose RMSE 10 1.2315 100 0.1158 Table 3.14: Average RMSE of the pose with respect to the number of layers, considering only epochs 101, 251, and 501. 62 Validation Data Distribution Training Data Distribution Uniform Random Validation Data Chebyshev Random Validation Data Uniform Random Training Data 0.6667 0.7490 Chebyshev Random Training Data 0.6166 0.6623 Table 3.15: Average RMSE of the pose with respect to the method of data gen- eration, considering only epochs 101, 251, and 501. From the average RMSE data using epochs of 101, 251, and 501, it is clear that certain parameters have a positive effect on the accuracy of the neural network. It is clear that increasing the number of epochs of training, increasing the number of nodes per layer, and using the Chebyshev random training data have a positive effect on the accuracy of the neural network. It is also clear that increasing the number of layers also increases the accuracy of the neural networks up to 3 layers, but has the opposite effect for layers 4 and 5. This is likely due to over- fitting, where the neural network has fitted itself to the training data and has lost generalizability. Each of the 100 combinations of parameters is also compared to determine the overall neural network construction with optimal performance. Interestingly, the network with the lowest average RMSE utilized 5 layers, 100 nodes per layer, 501 epochs, and the Chebyshev random distribution for generating data. This network construction had an average RMSE value of 0.0428 across both the Chebyshev and uniform random validation data. This disagrees with the results of Table 3.13, which identified 3 layers as the optimal construction. This could be due to numerous factors, but is most likely caused by the network getting stuck in local minima. Overall, however, it appears the optimal network construction utilizes 3 layers, 100 nodes per layer, 501 epochs, and the Chebyshev random distribution for generating data. One of the major advantages of the neural network is its overall flexibility. As a consequence, the neural network could be modified to be much more general, 63 such as to predict the forward kinematics of any flexible beam rather than just the TRAC boom. This would require the parameters of the particular boom to be added as inputs to the neural network and significant data on the ground-truth data for this beam. Furthermore, the neural network is able to consider as many or as few inputs as desired. In this construction, the neural network considers both the cable tensions and cable lengths, providing more information on the current state of the CDCM. As an extension of this work, the neural network could be modified to consider the material properties in order to predict the deformation of other beam models. 3.5 Closing Remarks Three different methods were derived to approximate the forward kinematics of the CDCM. Each of these three methods has particular advantages and disadvantages. The polynomial fitting method yielded surprisingly accurate results despite its relatively simple construction. However, in its current construction, it could only predict the CDCM beam deformation due to the actuation of a single cable. Compared to this, the assumed modes method could also predict the transient response of the beam. However, it was more computationally expensive than the polynomial method and could also only predict the deformation due to the actuation of a single cable. Finally, the neural network method could predict the equilibrium position of the beam deformation due to the actuation of two parallel cables. This could be further generalized for any number of additional cables or other parameters entirely, including for the material properties of the beam. However, it has lower accuracy than the polynomial fitting method despite requiring more data, and has no information on the transient response. Each of these three methods has areas that could be improved, which could al- leviate some of these drawbacks. For example, both the polynomial fitting method and the assumed modes method could be expanded for use with multiple cables. 64 Additionally, the envelope of the assumed modes method could be predicted us- ing either the polynomial fitting method or the neural network method to reduce computation time. Alternatively, the neural network method could be trained further to reduce the RMSE error. Overall, it is clear that the forward kinematics can be approximated using one of several techniques. However, the best approach will depend on the particular limitations of a design. Chapter 4 Hardware Design of the Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail 4.1 Introduction In order to develop the full-scale CABLESSail prototype, a prototype CDCM is designed for future integration as the flexible beam elements of the CABLESSail concept. Therefore, the concept of the CDCM is implemented in hardware to provide a proof of concept and validation of the models developed in Chapter 2. In this section, three iterations of the CDCM design are discussed. The particular hardware selected for use in these designs is also motivated. Finally, the experi- mental results are demonstrated along with a comparison to the results predicted by the model in Chapter 3. These include the change in motor rotation, the in- duced load torque from the deflected beam, and the end-effector displacement of the flexible beam. This provides evidence of the feasibility of the CABLESSail concept along with a qualitative analysis of the actuator requirements for the CDCM. 65 66 4.2 Design The design of the CDCM consists of three iterations. The first and second iter- ations of the CDCM model are constructed with support from Michael Dallalah and Michael States, two undergraduate Aerospace Engineering and Mechanics students at the University of Minnesota. The third iteration of the CDCM model is constructed with support from Michael States. The first iteration is a general proof of concept with an oversized base and oversized disk beam elements to en- sure a successful result. This iteration only tested cable tensions that resulted in large lateral deformation. The second iteration focused on decreasing the cable radius to more accurately model the ratio of the beam length to the cable radius that would be required on a real solar sail. It also tested torsional deformation to determine feasibility with respect to the NASA mission criteria. The final it- eration focused on improvements to the structural design, with a minor revision to the beam elements. Each iteration of the CDCM structure is designed and modeled in Solidworks. These are then exported to STL Files and 3-D printed us- ing a Prusa i3 MK3S+. This method allowed for flexibility in the design process, including ease of part replacement and allowing the use of unique or non-standard part structures. 4.2.1 Iteration I The CDCM base is constructed from four modular pieces, with an additional insert for the base of the boom. Each of these four modular components attaches to a motor enclosure and enclosure plate. The four modular pieces are connected with a bolt. In addition, the base insert is bolted to the four modular pieces. This iteration uses a 3/8 in diameter polycarbonate beam. The isometric model is shown in Fig. 4.1. The first iteration of the CDCM utilizes beam elements with 2 in cable radius with respect to the central beam. This design utilized four beam elements includ- ing the end cap. The isometric model of the beam elements and the end cap is 67 Figure 4.1: Isometric model of the first iteration of the CDCM base. shown in Fig. 4.2. (a) (b) Figure 4.2: Isometric model of the first iteration of the CDCM beam elements. This includes (a) the standard beam elements and (b) the beam end cap. One of the main drawbacks of this design is that the beam is mounted below the motors. This means the motors are not actuating on the entire beam, which reduces their control authority. In addition, since the beam insert is below the motors, the first beam element moves relative to the base frame as the motors actuate on the cables. This is undesirable as it increases friction and is inaccurate 68 with respect to standard CDCM models, including the one used in Section 2.4. Additional figures are included in Appendix B.1. In particular, an engineering diagram of the base and an additional isometric model is included for further design clarity. 4.2.2 Iteration II The second iteration modified the beam elements to have a 0.5 in cable radius. This cable radius is chosen to demonstrate the capability of deformation for a CDCM with a much tighter cable radius, which more strongly resembles the di- mensions of a real solar sail boom. This design again used four beam elements including the end cap. The isometric model of the beam elements and the end cap is shown in Fig. 4.3. The second iteration of the CDCM used the same base design and polycarbonate beam as the first iteration. (a) (b) Figure 4.3: Isometric model of the second iteration of the CDCM beam elements. This includes (a) the standard beam elements and (b) the beam end cap. 4.2.3 Iteration III The third iteration of the CDCM included a redesign of the base and added support for several variations of beams. This design is constructed using a combi- nation of 3-D printed components and other construction materials. The frame is 69 constructed from four 9 in t-slotted rails. These are connected by two 3-D printed bases. The enclosure plate and the spool supports are mounted to the frame us- ing t-slot fasteners. The motors, enclosures, and spools are vertically staggered to eliminate the additional friction caused by the cables bending outward from the last beam element to the spool. Each of the spools is supported by ball bearings. The isometric model is shown in Fig. 4.4. Figure 4.4: Isometric model of the third iteration of the CDCM base. This design supports modular swapping of the beam insert. This means that the same base frame can be used for any beam, as the insert can be unbolted and swapped with a different insert that supports a different beam. In addition, this ensures the cables form a normal vector with respect to the base plate. This is im- portant as it ensures the cable position coincident with the frame does not change as the motor actuates on the cable and the cable length increases or decreases. Two different inserts are designed for this iteration of the CDCM. The first is compatible with a 3/8 in polycarbonate beam as is used in every iteration of the design. The second insert supports a 1 in tape measure TRAC boom. These are illustrated in Fig. 4.5 and 4.6. The tape measure beam insert is constructed in two parts. The tape measure 70 Figure 4.5: Isometric model of the polycarbonate beam insert for the third itera- tion of the CDCM. (a) (b) Figure 4.6: Isometric model of the tape measure beam insert for the third iteration of the CDCM. This includes (a) the insert for the 1 in tape measure TRAC boom and (b) the wedge for the 1 in tape measure TRAC boom. 71 TRAC boom is first inserted into the base plate, shown in Fig. 4.6a. This plate is designed to fit the flange of the boom. Each of two wedges, shown in Fig. 4.6b, is then inserted to hold the tape measure TRAC boom in place. The beam elements are also modeled in Solidworks and 3-D printed to fit either the tape measure TRAC boom or the polycarbonate beam. The beam elements for the polycarbonate beam are slightly modified from the second iteration. Note that the end cap is unchanged from the second iteration of the CDCM. The isometric models for these beam elements are shown in Fig. 4.7. (a) (b) Figure 4.7: Isometric model of the third iteration of the CDCM beam elements. This includes (a) the standard beam elements and (b) the beam end cap. Whereas the beam elements for the polycarbonate beam closely resemble the disks of a conventional CDCM, the beam elements of the tape measure TRAC boom are small cable routings that are mounted along each axis of the boom. The isometric model of these beam elements is given in Fig. 4.8. These TRAC boom elements are designed to allow the beam elements to be mounted to the TRAC boom without impeding its stowed configuration. This design allows cables to be routed directly along the axis of the flange for lateral deformation of the boom, and helically through all three beam elements for torsional deformation. However, this design does not allow reverse lateral deformation, unlike the polycarbonate beam. The dimensions of the tape measure TRAC boom are modeled in Solidworks 72 Figure 4.8: Isometric model of the beam elements used for the tape measure TRAC boom. using the measured dimensions of the assembled beam. The cross-sectional model is shown in Fig. 4.9. Notably, the path length is 25.40 mm (1.0 in), and the thickness is 0.127 mm (0.005 in). These dimensions are used to find the area moment of inertia in Solidworks. The area moment of inertia values are given in Fig. 4.1. Moments of Inertia of the Area, at the Centroid (mm4) Lxx = 242.91932 Lxy = 0.0 Lxz = 0.0 Lyx = 0.0 Lyy = 157.15591 Lyz = 0.0 Lzx = 0.0 Lzy = 0.0 Lzz = 400.07523 Table 4.1: Area moment of inertia properties of the tape measure TRAC boom cross-section. In simulation, the beam is modeled as a hollow disk with outer radius equal to the distance from the centroid to the top of the web, and inner radius equal to the distance from the centroid to the bottom of the web. This resolves to an outer radius of 11.63393 mm and inner radius of 6.81559 mm. Furthermore, the cable radius is determined as the distance from the centroid to the outer web plus the radius of the cable routing hole given in Fig. 4.8. The radius of the cable routing hole is 0.125 in, or 3.175 mm, which yields a total cable radius of 14.80893 mm (0.5830287 in). As discussed in Section 4.2.2, the disk beam elements for the polycarbonate beam have a 0.5 in cable radius. 73 Figure 4.9: Model of the tape measure TRAC boom cross-section. Additional figures are included in Appendix B.2. In particular, an engineering diagram of the base and additional isometric models of the base and the TRAC boom are included for further design clarity. 4.3 Hardware Selection Hardware is selected based on flexibility and ease of integration with these designs. As the ARDC lab at the University of Minnesota has significant experience with using ODrive Robotics hardware, this is selected as the basis for hardware design. In particular, the ODrive Pro is selected for use as the motor controller for each of the four motors on the CDCM. The ODrive Pro is a high performance hobby motor controller that has significant customizability. It allows for position control, torque control, and velocity control, which makes it flexible for all possible use cases in this preliminary CDCM design. The ODrive motor controller software provides a 74 feedback loop with the motors and encoder to match the desired position, torque, or velocity with the measured value. The ODrive D6374 brushless DC motor is selected since it provides simple integration with the ODrive Pro motor controller. These motors can also provide up to 3.86 Nm of torque [36]. Noting that the spools have a 0.25 in radius, this means these motors can provide∼600 N of cable tension. The AMT212B-V-OD absolute encoder is selected to provide encoder feedback to the ODrive Pro. This is an AMT212B-V absolute encoder with custom ODrive firmware to enable higher speeds and less jitter. The ODrive Pro, D6374 motor, and AMT212B-V-OD encoder are illustrated in Fig. 4.10. The encoder feedback is used as the measurement for an outer feedback con- troller that supplies inputs to all four motor controllers. The Arduino Giga R1 is selected as the central processor for the encoder data and outer loop controller. The four ODrive Pros are connected via TTL UART to the four Serial ports on the Arduino. The ODrive Arduino library, provided by ODrive [37], is modified to read the encoder data and provide the desired output. The Arduino Giga R1 is shown in Fig. 4.11. Since the ODrive motor with a 0.25 in radius winch is capable of providing up to 600 N of cable tension, the cables are selected to be 250 Lb rated Kevlar line. This is equivalent to ∼1112 N of tension, approximately double the maximum tension that the motor and winch combination can produce. These cables also have a high strength to mass ratio and significantly less stretch compared to nylon wire. As discussed in Section 4.2, the two beams used in prototyping are a poly- carbonate beam and a tape measure TRAC boom. The polycarbonate beam is a Grainger 3 ft by 3/8 in general purpose polycarbonate rod. The tape measure TRAC boom is constructed from a Stanley 25 ft by 1 in steel tape measure. This tape measure is made from a C1095 steel alloy and hardened to R15N 83-86. Two different sizes of TRAC boom are chosen - one 1 m boom and the other 2.5 m boom. To construct the tape measure TRAC boom, two pieces of the desired boom length are cut from the tape measure. These pieces are taped together to replicate 75 (a) (b) (c) Figure 4.10: Hardware selection for the CDCM. This includes (a) the ODrive Pro motor controller, (b) the ODrive D6374 brushless DC motor, and (c) the AMT212B-V-OD absolute encoder. 76 Figure 4.11: Arduino Giga R1 used for CDCM control the flange of the TRAC boom. The beam elements also provide additional sup- port by holding the two tape measure components together. The polycarbonate beam and the tape measure TRAC boom are shown in Figs. 4.12 and 4.13. In addition, the fully assembled third iteration of the CDCM with the polycarbonate beam is shown, along with the CDCM with a nominal deflection, in Fig. 4.14. (a) (b) Figure 4.12: Polycarbonate beam for the CDCM. To provide power to the ODrives, two 24 V, 600 W Mean Well power supplies are selected for AC/DC power conversion and power supply. Each of these power supplies provides power to two ODrives, which in turn provides power to a single 77 (a) (b) Figure 4.13: Tape measure TRAC boom for the CDCM. Shown is the 1 m tape measure TRAC boom. (a) (b) Figure 4.14: Fully assembled third iteration of the CDCM. Shown are (a) the CDCMwith no applied cable tension and (b) the CDCMwith a nominal deflection. 78 motor. The line between the power supply and the ODrive is connected by a SureStep regen clamp, which is rated for 7 A and 50 W continuous, 800 W peak power. The power supply and regeneration clamp are shown in Fig. 4.15. (a) (b) Figure 4.15: (a) The SureStep regeneration clamp and (b) the Mean Well LRS- 600-24 power supply. Noting that the torque constant of the ODrive D6374 motor is ∼0.053 Nm/A, the maximum safe torque that can be provided by the motors is 0.371 Nm. Re- calling that the spool radius is 0.25 in, this means the maximum safe cable tension that can be supplied by the motors is 58.425 N. However, it is important to note that the motor is capable of exceeding the safe bounds of the regeneration clamp. In future iterations, the regeneration clamp may need to be changed in order to provide wider safety margins. The entire parts list is included in Appendix C for reference. 4.4 Results Testing is conducted on the CDCM with the assistance of Michael States and Niko Sexton, two undergraduate Aerospace Engineering and Mechanics students at the University of Minnesota. The CDCM is configured for use with the polycarbonate 79 beam for testing in this section. The ODrive is first set to a zero position where the cables are taut but not pulling. The ODrive is then set to filtered position control and set to positions between 0.1 rotations and 0.8 rotations in 0.1 rotation increments. The results are recorded in radians, which correspond to a minimum set point of 0.6283 radians, a maximum of 5.0265 radians, and 0.6283 radian increments. Three pairs of Vicon markers are placed along the CDCM beam, in addition to four markers placed in the beam insert, in order to track the position of the CDCM. The first pair of markers are placed about 6 inches from the base, the second near the center of the beam, and the third about 4 inches from the tip of the beam. These markers are recorded using Vicon MX cameras and Tracker 3.9 software [38]. The motor rotation, angular velocity, and torque applied are also recorded in Matlab, using the UART TTL connection from the Arduino Giga to the ODrive Pros and the USB Serial connection from the computer to the Arduino Giga. The polycarbonate beam is also modeled in simulation, and the experimental and simulation results for the end-effector displacement and motor torque are compared. While the tape measure TRAC booms are not tested in hardware, the 2.5 m tape measure TRAC boom is modeled in simulation. The simulations developed in Chapter 2 are modified to reflect the material properties of the polycarbonate beam and the tape measure TRAC boom. The material properties for each of these materials are found online [39–41]. The ma- terial properties of polycarbonate are estimated as the parameters in Table 4.2. The material properties of C1095 steel alloy are estimated as the parameters in Table 4.3. Polycarbonate Material Properties E (GPa) v (Poisson’s Ratio) G (GPa) Mass Density (kg/m3) 2.378 0.36 0.786 1.2×103 Table 4.2: Material properties for polycarbonate [39, 40]. 80 C1095 Steel Alloy Material Properties E (GPa) v (Poisson’s Ratio) G (GPa) Mass Density (kg/m3) 205 0.29 80.0 7.85×103 Table 4.3: Material properties for a C1095 steel alloy [41]. The simulation model of the boom used for these results uses the PRB model. This is chosen so the results of the simulation are as accurate as possible to compare with the experimental results. However, it is important to note that, while the gravitational acceleration in the PRB model is changed to reflect Earth’s gravity for this analysis, the resulting beam deformation predicted by simulation is found to be the same for any gravitational acceleration value. It appears that there is a bug in the code for the PRB model developed by [20], where this model does not consider gravity in the beam deformation model. The polynomial interpolation technique is modified from Chapter 3 for use in this analysis. Two equations are derived using the polynomial interpolation method: the first to describe the CDCM end-effector displacement with respect to the load torque, and the second to describe the load torque with respect to motor rotations. Noting the winch radius of 0.25 in, the motor rotations can be calculated using the cable length displacement predicted by the simulation. In a similar way, the load torque can be calculated using the winch radius as well as the cable tension predicted by the simulation The data is generated using the Chebyshev nodes given by Eq. (3.2) with 801 data nodes. For the polycarbonate beam simulation, the sample tension forces are selected to be in the range of (0 N, 200 N). For the tape measure TRAC boom simulation, the sample tension forces are selected to be in the range of (0 N, 2500 N). In each case, these ranges are found to actuate the cables of the simulated CDCM up to 0.8 rotations. In this simulation, the cable actuation and the displacement of the end-effector are significantly larger than in Section 3.2. From running the simulation, it is observed that the third order polynomial is no longer sufficient 81 to accurately fit the data. Thus, a sixth order polynomial is selected to fit the data from this simulation. This sixth order polynomial is generated using the Chebyshev nodes and has an R2 value of 1.0000 for both polynomial functions. The equations of best fit are given in Tables. 4.4 and 4.5. Function Equation x1 (m) vs. load torque (Nm) x1 = 0.0779T 6 l − 0.1305T 5l − 0.0550T 4l − 0.2694T 3l +0.1710T 2 l +0.8688Tl+6.1969× 10−6 load torque (Nm) vs. ∆ motor position (rads) Tl = −1.7857×10−7p6+6.5142×10−6p5− 1.1776 × 10−4p4 + 0.0016p3 − 0.0195p2 + 0.2630p+ 1.6679× 10−6 Table 4.4: Functions representing the equilibrium solution for the polycarbonate beam displacement and motor torque vs. rotations. Function Equation x1 (m) vs. load torque (Nm) x1 = −3.0023×10−9T 6l +1.1430×10−6T 5l − 1.9810 × 10−5T 4l − 5.5827 × 10−4T 3l + 0.0014T 2l + 0.2261Tl − 2.3580× 10−6 load torque (Nm) vs. ∆ motor position (rads) Tl = −1.5305×10−7p6+5.6619×10−6p5− 8.6102 × 10−5p4 + 0.0016p3 − 0.0568p2 + 2.3723p− 5.6853× 10−7 Table 4.5: Functions representing the equilibrium solution for the tape measure TRAC boom displacement and motor torque vs. rotations. The predicted cable tension and end-effector position for both the polycarbon- ate beam and tape measure TRAC boom simulations and each of the set points are provided in Tables 4.6 and 4.7. The results of the rotation of the motor, the applied motor torque, and the end-effector deflection are plotted in Fig. 4.16. There are several limitations of the data generation from the Vicon cameras that should be noted. First, the data generated from the Vicon cameras had to be synchronized manually. To do this, the time coinciding with the final position at the set point is offset until they match with the time of the trial for the 0.8 rotation 82 Motor Actuation (rads) Tip Deflection (mm) Torque Required (Nm) 0.6283 140.3526 0.1579 1.2566 270.2868 0.3025 1.8850 385.1375 0.4356 2.5133 481.6619 0.5586 3.1416 557.9021 0.6729 3.7699 613.0756 0.7793 4.3982 647.4245 0.8788 5.0265 662.0315 0.9722 Table 4.6: Simulation results for the 3 ft polycarbonate beam using the PRB model. Motor Actuation (rads) Tip Deflection (mm) Torque Required (Nm) 0.6283 333.1305 1.4685 1.2566 651.2663 2.8943 1.8850 944.0947 4.2793 2.5133 1202.7734 5.6252 3.1416 1420.3351 6.9336 3.7699 1591.8906 8.2060 4.3982 1714.6700 9.4437 5.0265 1787.9477 10.6480 Table 4.7: Simulation results for the 2.5 m tape measure TRAC boom using the PRB model. 83 (a) (b) (c) Figure 4.16: Experimental results for the CDCM with the polycarbonate beam. This includes (a) the rotation of the motor, (b) the applied motor torque, and (c) the displacement of the end-effector. 84 (5.0265 rads) set point. Second, the zero point for the Vicon data is set based on the average position at equilibrium. This nonzero equilibrium is calculated to be 30.34 mm, and indicates that the beam may not be perfectly straight. Qualitatively, the beam does appear to have some natural bend. Finally, the end- effector position is calculated using a straight-line approximation between the final two pairs of Vicon markers. These markers are located near the center of the beam and about 4 in from the tip of the beam. Thus, there is some error between the straight-line approximation and the true displacement of the tip of the beam. For the motor rotation data, the rotation also had to be offset by a nonzero initial position. This is because the motor calculates the relative position based on the startup position. This initial position is determined to be 0.075 rotations; however, this initial position offset would likely change if these experiments are repeated, and simply represents the absolute position calculated at startup. When moving to the full-scale CABLESSail prototype, it may be useful to define an absolute position to ensure the positioning of the motor is consistent. The equilibrium end-effector position, motor position, and applied torque are calculated for each of the set points as well. This is found by taking the average value between the time interval 12 s and 14 s, which is observed to be well after the transience has decayed. In particular, the time constant of the filtered position function in ODrive is known to be 0.5 s, so this coincides with 24 to 28 time constants beyond the initial time. At this point, the output can be considered to be at equilibrium. These equilibrium positions are recorded in Table 4.8. The results in Tables 4.6 and 4.8 indicate the model compares very poorly to the experimental results. Although the motor actuation matches closely be- tween simulation and hardware, the tip deflection and the torque requirements are significantly lower in hardware compared to simulation. This is an interesting result because it indicates the model incorrectly assumes the relationship between motor rotation and end-effector position. The polynomial fit between the cable torque and tip deflection vs. motor rotations assumed there is no cable stretch- ing; however, a nominal cable stretch could result in the results seen in Table 4.8. 85 Motor Actuation (rads) Tip Deflection (mm) Torque Required (Nm) 0.6282 15.20 0.0235 1.2564 45.17 0.0294 1.8847 95.65 0.1793 2.5130 162.17 0.2142 3.1410 240.23 0.2871 3.7694 323.97 0.3665 4.3977 401.09 0.4298 5.0260 478.89 0.6430 Table 4.8: Experimental equilibrium results for the 3 ft polycarbonate beam. Thus, rather than attempting to match the motor actuation, the simulation is run using the cable tensions corresponding to the applied motor torques observed in experimentation. These results are recorded in Table 4.9. Motor Actuation (rads) Tip Deflection (mm) Torque Required (Nm) 0.0899 20.5162 0.0235 0.1127 25.6934 0.0294 0.7179 159.6427 0.1793 0.8666 191.1275 0.2142 1.1871 256.5697 0.2871 1.5524 326.4640 0.3665 1.8565 380.3217 0.4298 2.9729 539.4855 0.6430 Table 4.9: Simulation results for the 3 ft polycarbonate beam using the PRB model and the experimental torques for each set point. The results in Table 4.9 are much closer to the experimental results for the tip deflection given in Table 4.8. While the tip deflection matches closer with the experimental results, the motor rotation has decreased significantly compared to the experimental results. This provides further evidence that the cables are stretching. While these results still have some error, it is noted that these mate- rial properties are found online for general purpose polycarbonate. It is further 86 noted that polycarbonate, and plastics in general, have a high variance in material properties. As an extension, it would be useful to determine the properties of this polycarbonate beam. Alternatively, testing the tape measure may provide better results since the hardened steel should have more accurate material properties. It may also be possible to reduce the cable stretching by selecting a different cable material. Any of these would be useful to improve the accuracy of the model and determine the accuracy of the PRB model as a whole. 4.5 Closing Remarks The concept of the CDCM was implemented in hardware using a polycarbonate beam and a tape measure TRAC boom to represent the flexible boom of the CA- BLESSail design. Over three iterations, the design was improved to reduce the size of the CDCM while also implementing the design constraints of the CAB- LESSail prototype. The prototype was also tested at a sequence of set points. These results were compared to results predicted by the simulations developed in the previous chapters. Initially, the simulation results compared poorly to the experimental results. However, it was shown that this was likely due to cable stretching. Because of the disparity between the predicted and experimental results, sig- nificant work will be needed to improve the simulation model. As discussed, some of the most straightforward methods to improve this model would be to replace the cables with less flexible cables, determine the material properties of the poly- carbonate beam experimentally, or replace the beam with a material with more consistent material properties. However, these were not the only disadvantages of the model. This model could only predict the equilibrium position of the end- effector position. For the full-scale CABLESSail prototype, it will be important to determine the damping of the beam in order to determine how long it takes to reach equilibrium. 87 Despite these limitations, the experimental results show promise for the feasi- bility of the CABLESSail concept. The CDCM was able to effectively deflect the beam in excess of the requirements needed for the full-scale Solar Cruiser design. In future work, the most important aspect to improve in the design would be the forward kinematics of the CDCM. This will become extremely important when estimating the position of the end-effector and controlling the deformation to a particular pose. Chapter 5 Modeling the Dynamics of the Cable-Driven Continuum Manipulator Hardware 5.1 Introduction Thus far, the derived models for the CABLESSail design have focused on the system in static equilibrium. However, it is important to model the dynamics of the system to ensure stability and quantify the bounds of operation, including the oscillations, actuation bounds, and power requirements. Therefore, the CDCM hardware is modeled using a high-fidelity PMSM model. The controller for this motor is developed from the field-oriented control technique. This model is simu- lated using the Solar Cruiser TRAC boom model, the tape measure TRAC boom model, and the prototype polycarbonate beam. The results of the polycarbonate beam simulation are also compared to experimental results. 88 89 5.2 Permanent Magnet Synchronous Motor Concepts A permanent magnet synchronous motor (PMSM) is an alternating current (AC) synchronous motor that uses a wire-wound stator to create a magnetic field and rotate the permanent magnet rotor. The PMSM shares many properties with the brushless direct current (BLDC) motor. In particular, they both have a wire- wound stator, permanent magnet rotor, and are electronically commutated mo- tors. However, the main difference is the sinusoidal counter-electromotive force (back-EMF) produced by the windings in a PMSM, as opposed to the trapezoidal back-EMF of the BLDC motor. This back-EMF waveform is a property of the geometry of the motor, and cannot be controlled or modified by the controller. The most fundamental parameters of any motor are the phase resistance, phase inductance, speed constant, and torque constant. These parameters define the overall performance of the motor. The phase resistance and phase inductance are simply the equivalent resistance and inductance that exist in each phase line of the motor. However, sometimes these parameters are given phase-phase and not phase-neutral, so care must be applied when interpreting these parameters. The speed constant defines the ratio between the mechanical velocity of the motor and the voltage applied. Typically, this ratio is given in rpm VLL,pk . In order to translate this line-line voltage to the line-neutral voltage, the voltage is divided by √ 3. This assumes the voltages are sinusoidal and are 120° out of phase, as is typical of most PMSMs. Finally, the torque constant defines the ratio between the electromechanical torque output and the current. This ratio is typically given in Nm Apk . However, it can also be derived from the speed constant. This relationship is given as KT = 3 2 1√ 3 60√ 2π 1 KV . (5.1) In this expression, each of the coefficients has a particular interpretation. The first 90 coefficient, 60√ 2π , represents a change of units from rpm to rad s . The second coeffi- cient, 1√ 3 , converts the voltage from line-line to line-neutral. The final coefficient, 3 2 , represents the total torque generated from the contribution of all three currents. This torque constant is derived assuming a sinusoidal current commutation, which is valid for most PMSMs. To optimize the performance of the motor, the applied current should match the waveform of the back-EMF. This is evident by the equation for the motor torque, which is given by Te = eaia + ebib + ecic ωm , (5.2) where ej is the back-EMF of winding j, and ωm is the motor velocity in rad s [42]. By convention, the motor velocity is defined in the counter-clockwise direction. Since the back-EMF in a PMSM is sinusoidal, the per-phase current should also be sinusoidal in phase with the back-EMF. The generalized ideal per-phase current waveform is given by Ia = −Ipk sin(ωet), (5.3) Ib = −Ipk sin(ωet− 2π 3 ), (5.4) Ic = −Ipk sin(ωet− 4π 3 ). (5.5) Similarly, the per-phase back-EMF waveform is given by ea = − ωm√ 3KV,rad sin(ωet), (5.6) eb = − ωm√ 3KV,rad sin(ωet− 2π 3 ), (5.7) ec = − ωm√ 3KV,rad sin(ωet− 4π 3 ). (5.8) Here, ωm is the rotor mechanical velocity and ωe is the electrical velocity, both in rad s . The electrical velocity is given as the frequency of the stator voltages, 91 which depends on the number of magnet pole pairs. The √ 3 is included since the back-EMF is defined for the line-neutral voltage, but KV is defined for the line-line voltage. Using Eq. (5.2), the torque can be calculated as Te = ωmIpk(sin 2(ωet) + sin 2(ωet− 2π3 ) + sin2(ωet− 4π3 ) ωm √ 3KV,rad = Ipk 3 2 1√ 3 1 KV,rad = IpkKT . (5.9) This shows that when the current and back-EMF have the same waveform, the torque output by the motor is constant. From this simple torque calculation, it is clear that the motor dynamics are difficult to calculate due to the three-phase sinusoidal waveforms. Rather than calculating the dynamics in the static frame of reference, the signals can be trans- formed into the rotor’s rotating frame of reference. In this frame of reference, and assuming a balanced system, the three-phase AC system can be modeled as if it is a two-parameter DC system. This is known as field-oriented control (FOC). This method has several other advantages as well, including reduced torque ripple and higher motor efficiency, particularly at high speeds [43, 44]. This method relies on two transformations: the Clarke transformation and the Park transformation. This two-step process is illustrated in Fig 5.1. In a three-phase motor, the three current signals are 120° out of phase. This is shown in Eqs. (5.3)-(5.5). Assuming a balanced system, the Clarke transfor- mation transforms these three phases into a static, orthogonal, two-axis reference frame [46]. The Clarke transformation is defined as Iα(t) Iβ(t) Iγ(t)  = 23  1 −1 2 −1 2 0 √ 3 2 − √ 3 2 1 2 1 2 1 2   Ia(t) Ib(t) Ic(t)  . (5.10) 92 Figure 5.1: Illustration of the Clarke and Park transformation from a three-phase static reference frame to a two-parameter rotating reference frame [45]. In a balanced three-phase system, Iα(t) = I s d(t), Iβ(t) = I s q (t), and Iγ(t) = 0, as shown in Fig. 5.1. After translating the three-phase system to a two-phase orthogonal system, the Park transform applies a rotation matrix between the rotor and stator. This translates the signals from the static reference frame of the stator to the rotating reference frame of the rotor. The Park transform is given as Id Iq Iz  =  cos θ sin θ 0 − sin θ cos θ 0 0 0 1   Iα(t) Iβ(t) Iγ(t)  . (5.11) Combined, these two transformations apply a direct-quadrature-zero (DQZ) trans- formation [47]. Intuitively, the DQZ transform is a technique to model a balanced three-phase AC system as a two-phase DC system. In the two-phase DC system, the two phases are given by the q-axis and d-axis current. The equivalent circuit for the q-axis current is shown in Fig. 5.2, assuming the d-axis current is zero. The DQZ transformation is applied to the ideal current equations given in Eqs. (5.3)-(5.5). After applying the Clarke transformation, the resulting currents are given as  Iα(t) Iβ(t) Iγ(t)  =  −Ipk sin(ωet) Ipk cos(ωet) 0  . (5.12) 93 e q L s R s V q I q Figure 5.2: Equivalent q-axis circuit diagram of a three-phase PMSM after apply- ing the DQZ transformation, assuming zero d-axis current. Using the currents derived from the Clarke transform, the DQZ currents are found by applying the Park transform. These currents are found to be Id Iq Iz  =  0 Ipk 0  . (5.13) Thus, it is shown that the Clarke and Park transforms change the time-varying sinusoidal current under ideal conditions to a single, constant parameter. In gen- eral, the ideal operation of a PMSM motor controller is to drive Id to zero and Iq to the desired line current. The PMSM model is defined in the frame of reference of the rotor [48]. The equations that model the dynamics of the PMSM are 94 Vd = IdRs + dλd dt − ωeLqIq, (5.14) Vq = IqRs + dλq dt + ωeLdId + ωeλpm, (5.15) eq = ωeλpm, (5.16) λd = LdId + λpm, (5.17) λq = LqIq, (5.18) Te = 3 2 p(λpmIq + (Ld − Lq)IdIq), (5.19) Te − Tl = J dωm dt +Bf , (5.20) Bf =  Bvωm +Bcsign(ωm) for ωm ̸= 0 Bs,maxsign(Te − Tl) for ωm = 0, |Te − Tl| ≥ Bs,max Te − Tl for ωm = 0, |Te − Tl| < Bs,max , (5.21) ωm = ωe p . (5.22) The parameters of Eqs. (5.14)-(5.22) are defined in Table 5.1. 95 Symbol Description Vd d-axis voltage (V) Vq q-axis voltage (V) eq q-axis back-EMF (V) Id d-axis current (A) Iq q-axis current (A) Rs Stator phase resistance (Ω) λpm Permanent magnet flux linkage (Weber) λd d-axis flux linkage (Weber) λq q-axis flux linkage (Weber) ωe Electrical velocity i.e. frequency of stator voltages ( rad s ) ωm Rotor mechanical velocity ( rad s ) Ld d-axis inductance (Henry) Lq q-axis inductance (Henry) Te Electromechanical torque produced by the PMSM (Nm) Tl Load torque (Nm) p Pole pairs J Motor moment of inertia (kg-m2) Bf Motor friction Bv Viscous friction coefficient (Nm-s) Bc Coulomb friction coefficient (Nm) Bs,max Static friction coefficient (Nm) Table 5.1: Parameters of the PMSM equations given in Eqs. (5.14)-(5.22) [48]. 96 5.3 Modeling the ODrive D6374 The prototype CDCM developed in Chapter 4 utilized ODrive hardware for the motor and motor controller. The particular motor selected for this prototype was the ODrive D6374 motor. This is a three-phase, high torque, outrunner hobby motor. An example of an outrunner hobby motor is shown in Fig. 5.3. This figure Figure 5.3: Interior of the KDE Direct KDE2315XF-885, a hobby-grade outrunner motor similar to the ODrive D6374. [49] illustrates the interior construction of a typical hobby-grade outrunner motor. Of particular note are the concentrated stator windings, 12 wire-wound stator poles, and 14 permanent magnet poles. This is also considered an outrunner motor since the rotor is outside the stator. These properties are the same between the KDE Direct KDE2315XF-885 and the ODrive D6374, which makes this illustration a good representation of the interior construction of the ODrive 6374. The ODrive D6374 hobby motor is sold as a brushless direct current motor (BLDC). Despite its name, it is actually a permanent magnet synchronous motor 97 (PMSM). This is because the back-EMF is a sinusoidal waveform, not a trape- zoidal waveform. The ODrive 6374 motor can be modeled using the three-phase circuit diagram given in Fig. 5.4. This diagram illustrates the phase resistance, phase inductance, and back-EMF, along with the phase voltage inputs. However, as derived in Section 5.2, the ODrive D6374 motor can be analyzed using the DQZ transformation to simplify many of the computations. ec ea eb La Lb Lc Ra Rb Rc Va Vb Vc n Ia Ib Ic Figure 5.4: Circuit diagram of a three-phase PMSM, such as the ODrive D6374. In order to analyze the ODrive motor, the phase resistance and phase in- ductance must be identified. Further, the torque and back-EMF must also be quantified for a particular input current. This requires identification of the speed and torque constants. Several motor properties of the D6374 are provided by ODrive and are given in Table 5.2. ODrive D6374 Motor Properties KV ( rpm VLL,pk ) Max Voltage (VLL,pk) Max Current (Apk) Phase Resistance (mΩ) Stator Poles/Magnet Poles 150 48 70 39 12n14p Table 5.2: Motor properties for the ODrive D6374 [36]. 98 Although not explicitly given by ODrive, the torque constant can be derived from the speed constant. The equation for the motor torque constant is given in Eq. (5.1). Thus, the torque constant is found to be 0.0551. The phase resistance and the phase inductance are two additional motor pa- rameters that are important for modeling the dynamics of the motor. While the phase resistance is given by ODrive, the phase inductance is not. However, both of these parameters can be measured during start-up calibration. For the ODrive D6374 used during this chapter, both of these parameters are measured and are given in Table 5.3. The torque constant is also provided in this table. In Inferred/Measured ODrive D6374 Motor Properties KT ( Nm Apk ) Phase Resistance (mΩ) Phase Inductance (µH) 0.0551 44 23.77 Table 5.3: Inferred and measured motor properties for the ODrive D6374. many cases, the phase inductance is measured phase-phase. However, according to ODrive documentation, the phase inductance is measured phase-neutral [50]. Thus, the d-axis inductance and q-axis inductance are equal to the phase induc- tance. The motor moment of inertia is calculated as the sum of the rotor moment of inertia and the winch moment of inertia. The rotor moment of inertia is provided by ODrive as approximately 1 × 10−4 kg-m2 [36]. The winch moment of inertia is calculated using the mass properties tool in Solidworks and the total filament used as predicted by the Prusa Slicer software. Using the Prusa Slicer software, the winch is found to be 12.91 g. Using this mass and the model for the winch in Solidworks, the moment of inertia for the winch is found to be 0.66164 kg-m2. The last remaining parameters of the ODrive D6374 are the frictional coeffi- cients. The ODrive is modeled using a combined Coulomb-viscous-static friction model. This is because the torque required to start rotating from rest is observed to be higher than the torque required to maintain a constant velocity. The friction parameters are measured using two different tests. The first test 99 measures the torque required for the motor to start rotating from rest. For this test, a known mass is attached to a cable and held taut but not pulling. The motor is set to torque mode, and the torque is incremented until the motor is able to lift the mass. Three different trials are conducted using a different mass for each trial. The second test measures the acceleration of the motor when the motor is moving. As before, a known mass is attached to the cable and held taut but not pulling. The motor is again set to torque mode and set to an arbitrary torque set point. The position, velocity, and applied torque are recorded for time steps of 0.05 s. The acceleration is calculated by differentiation. Finally, the transience is removed from the initial motor motion to ensure the motion has reached steady state. Using this acceleration, torque, and the known load mass, the total friction for each time step can be found by plugging into Eq. (5.20). In this test, six trials are conducted. Finally, least squares analysis is used to determine the frictional coefficients. The results for each of the static friction trials are given in Table 5.4. In particular, the masses, calculated load torque, torque required to start rotation, and calculated static friction for each trial are provided. Trial 1 Trial 2 Trial 3 Mass (kg) 0.20025 0.99881 2.7178 Load Torque (Nm) 0.0125 0.0622 0.1693 Minimum Rotation Torque (Nm) 0.09 0.135 0.225 Calculated Static Friction (Nm) 0.0775 0.0728 0.0557 Table 5.4: Experimental parameters and derived coefficients for the static friction evaluation using the ODrive D6374. 100 The average static friction is calculated to be 0.0687 Nm. These results are shown to have somewhat significant variance across the three trials. This is as- sumed to be caused by cogging torque, which is defined as the attraction between the stator teeth and the permanent magnets in a PMSM. This cogging torque varies based on the alignment of the rotor, and as such is likely the cause of the variation in the static friction results. This cogging torque cannot be reduced as it is a property of the motor. However, it can be compensated by the implementa- tion of an anticogging algorithm. In the case of this static friction test, the effect of the cogging torque on the results can be mitigated by increasing the number of trials. This would provide the average static friction based on the average cogging torque in the motor. The parameters chosen for each of the kinetic friction trials are given in Ta- ble 5.5. In addition, the total friction at each time step is shown in Fig. 5.5. Using linear least-squares regression, the line of the best is recorded and plotted on this data. This illustrates the coefficients that correspond to Bv and Bc in Eq. (5.20). The coefficients of the line of best fit are recorded in Table 5.6. As in the static friction results, these results are shown to have somewhat significant variance across the three trials. This is assumed to be caused by cogging torque. In order to determine the effect of cogging torque on the system, the least- squares regression could be modified to include the cogging torque as an additional parameter. In addition, the position of the rotor would have to be considered for each time step. If this variance is indeed caused by cogging torque, one would expect the total friction torque to be the same at fixed rotation increments. 101 Trial 1 Trial 2 Trial 3 Trial 4 Trial 5 Trial 6 Mass (kg) 1.35886 1.35886 2.27955 2.27955 2.7178 2.7178 Load Torque (Nm) 0.0846 0.0846 0.1420 0.1420 0.1693 0.1693 Motor Torque (Nm) 0.15 0.175 0.21 0.235 0.235 0.25 Table 5.5: Experimental parameters for the kinetic friction evaluation using the ODrive D6374. Figure 5.5: Total friction vs. motor velocity for the ODrive D6374. ODrive D6374 Kinetic Friction Coefficients Bv (Nm-s) Bc (Nm) 1.4152× 10−4 0.0598 Table 5.6: Kinetic friction coefficients for the ODrive D6374. 102 5.4 Controller Design for the ODrive D6374 The controller for the ODrive D6374 is implemented by ODrive as a cascaded position, velocity, and current controller [51]. The overall control structure is shown in Fig. 5.6. Figure 5.6: Cascaded position, velocity, and current controller implemented by ODrive [51]. Each of the stages is a PI controller with the exception of the position control loop, which is a position controller. The proportional and integral gains of each stage are tuned independently to achieve the desired bandwidth and performance specifications. Note that the feedforward term is set to zero in all cases by default. The input expression for each control stage is given by ODrive as ωm,r[k] = K d p,p(pr[k]− p[k]), (5.23) Iω[k] = Iω[k − 1] +Kdi,ω(ωm,r[k]− ωm[k]), (5.24) Iq,r[k] = K d p,ω(ωm,r[k]− ωm[k]) + Iω[k], (5.25) Vi,a[k] = Vi[k − 1] +Kdi,I(Ia,r[k]− Ia[k]), (5.26) Va,r[k] = K d p,I(Ia,r[k]− Ia[k]) + Vi,a[k]. (5.27) The definitions for each of the parameters in Eqs. (5.23)-(5.27) are given in Ta- ble 5.7. Note that these controllers are described in discrete time, with sampling 103 time Ts defined as 125 µs. However, the motor equations described in Eqs. (5.14)- (5.22) are in continuous time. Symbol Description pr Reference motor position (rad) p Feedback motor position (rad) Kdp,p Discrete proportional gain with respect to position error ωm,r Reference motor velocity ( rad s ) ωm Feedback motor velocity ( rad s ) Kdi,ω Discrete integral gain with respect to velocity error Iω Integral state with respect to velocity error Kdp,ω Discrete proportional gain with respect to velocity error Ia,r Reference a-axis motor current (A), where a is either q or d Ia Feedback a-axis motor current (A), where a is either q or d Kdi,I Discrete integral gain with respect to current error Vi Integral state with respect to current error Kdp,I Discrete proportional gain with respect to current error Va,r Reference a-axis motor voltage (V) Table 5.7: Parameters of the ODrive D6374 controller given in Eqs. (5.23)-(5.27). The implementation of this discrete time controller is somewhat atypical com- pared to a traditional discrete time controller. This controller can be derived from the continuous time equivalent controller, which is necessary for determining the discrete time gains. In addition, the simulations in the following section are conducted in continuous time, so this transformation is necessary for determining the continuous time controller. 104 The general continuous time PI controller is defined as u(t) = Kp(r(t)− y(t)) +Ki ∫ t 0 (r(τ)− y(τ))dτ, = Kp(r(t)− y(t)) + I(tk−1) +Ki ∫ t tk−1 (r(τ)− y(τ))dτ, (5.28) where, I(t) = Ki ∫ t 0 (r(τ)− y(τ))dτ, = ∫ t 0 f(τ)dτ. (5.29) The transformation from the continuous time to the discrete time controller is straightforward. The proportional controller is translated directly to the discrete domain, with the continuous time t corresponding to the discrete step Tsk. The discrete integral controller is translated from the continuous time using a Riemann sum. This is clear from the definition of the Riemann sum. This is given as F [k] = ∆Ts k∑ i=0 f(ti), = F [k − 1] + ∆Tsf(tk). (5.30) This equation matches the form of Eqs. (5.24) and (5.26). Here, Kdi,ω(ωm,r[k] − ωm[k]) = ∆Tsf(tk) and K d i,I(Ir[k]− I[k]) = ∆Tsf(tk) in Eq. (5.24) and Eq. (5.26), respectively. Thus, it is clear that the continuous integral gain can be translated to discrete time using the equation Ki = Kdi ∆Ts . (5.31) These steps have shown how the continuous gains can be translated to discrete time. However, based on analysis, it appears the gains provided in the ODrive configuration are already in continuous time. This is shown in the derivation of 105 the proportional and integral gains for the current controller. The rest of this chapter assumes the gains in the ODrive configuration are already in continuous time. If this is shown to be incorrect, the simulation can be modified using the equations derived above. The ODrive current controller determines the output current given a refer- ence current. The proportional and integral gains are determined according to a critically damped controller with a user-defined 3-dB bandwidth. The default bandwidth is 1000 rad s , which is used to derive the proportional and integral gain parameters. Using Eqs. (5.14) and (5.15), the current loop can be defined for both the d-axis and the q-axis. Finally, this derivation is found assuming ωe = 0, which is standard when designing a motor controller. The control loop for the d-axis and the q-axis are described in continuous time as Vd(t) = Id(t)Rs + Ld dId(t) dt = Kp,d(Ir,d(t)− Id(t)) +Ki,d ∫ t 0 (Ir,d(τ)− Id(τ))dτ, (5.32) Vq(t) = Iq(t)Rs + Lq dIq(t) dt = Kp,q(Iq,r(t)− Iq(t)) +Ki,q ∫ t 0 (Iq,r(τ)− Iq(τ))dτ. (5.33) Notably, the differential equation is the same for both the d-axis and the q-axis current. The transfer function for the d-axis and q-axis currents are thus derived as Ia(s) Ia,r(s) = Kp,as+Ki,a Las2 + (Kp,a +Rs)s+Ki,a , (5.34) where a denotes the current axis, either d or q. The 3-dB frequency can be found by expressing the squared magnitude of Eq. (5.34) and setting this equal to 1 2 . This is given as∣∣∣∣ Ia(jωc)Ia,r(jωc) ∣∣∣∣2 = 12 = (Kp,aωc)2 +K2i,a(Ki,a − Laω2c )2 + (Kp,aωc +Rsωc)2 , (5.35) 106 where the damping ratio and natural frequency are defined as ζ = 1 = Kp,a +Rs 2Laωn , (5.36) ωn = √ Ki,a La . (5.37) Using Eqs. (5.35)-(5.37), the proportional and integral gains for the current loop are found to be Kp,a = 0.019672 V A and Ki,a = 42.639167 V A-s . These gains match the values given in the ODrive configuration for 1000 rad s . Since these gains are derived in continuous time, this implies that the gain parameters in the ODrive configuration are also in continuous time. Therefore, the gain parameters defined in the ODrive configuration for the velocity and position feedback loops are also assumed to be in continuous time. In the simulation, the current feedback differential equation is differentiated with respect to t. This is found to have better simulation result stability. The resulting differential equation is given as dId(t) dt Rs + Ld d2Id(t) dt2 − ωe(t)Lq dIq(t) dt − dωe(t) dt LqIq(t) = Kp,d( dIr,d(t) dt − dId(t) dt ) +Ki(Ir,d(t)− Id(t)), (5.38) dIq(t) dt Rs + Lq d2Iq(t) dt2 + ωe(t)Ld dId(t) dt + dωe(t) dt LdId(t) + dωe(t) dt λpm = Kp,q( dIq,r(t) dt − dIq(t) dt ) +Ki(Iq,r(t)− Iq(t)). (5.39) The velocity control loop is not defined explicitly, but the output current signal is defined with respect to the reference velocity. This is defined in continuous time as Iq,r(t) = Kp,ω(ωm,r(t)− ωm(t)) +Ki,ω ∫ t 0 (ωm,r(τ)− ωm(τ))dτ. (5.40) The position control loop is also defined similarly. Unlike the current and velocity 107 control loops, the position control loop is a P controller. This is defined as ωm,r(t) = Kp,p(pr(t)− p(t)). (5.41) The proportional and integral velocity gains in this equation are defined in the ODrive configuration. Note that the position and velocity in the ODrive config- uration are defined in Nm as well as rotations, whereas these gains are derived assuming units of A and radians. Using the tuning configuration guide given by [51], these gains are set to Kp,p = 35 rad/s rads , Kp,ω = 1.1547 A rad/s , and Ki,ω = 11.5470 A rad/s-s . In the ODrive configuration, these correspond to Kp,p = 35 rev/s rev , Kp,ω = 0.4 Nm rev/s , and Ki,ω = 4 Nm rev/s-s . 5.5 Simulation Results The equations derived in Sections 5.3 and 5.4 are used to simulate the dynamics of the motor in the CDCM. This is simulated according to the Solar Cruiser model, which has a 29 m TRAC boom and material properties derived in Chapter 2. For this simulation, the load torque is modeled using a 3rd-order polynomial in a similar manner to the forward kinematics analysis in Chapter 3. This polyno- mial describes the load torque with respect to the change in motor position. This polynomial is derived using the required cable tension bounds derived in Chap- ter 2, which was found to be (0 N, 85 N). The polynomial is generated using 341 discrete points generated using the Chebyshev nodes described in Section 3.2.2. This polynomial function is found to be Tl = 0.0037p 3 − 0.0414p2 + 0.2985p− 1.4047× 10−4. (5.42) The first simulation actuates the motor from a cable tension of 0 N to the maximum 85 N. This assumes the cable is taut but not pulling at its initial position. This simulation further assumes an ideal motor in open-loop velocity control, i.e., the inductance, rotor moment of inertia, and friction are all zero. 108 Therefore, the d-axis current and q-axis current can be controlled directly by the voltage set point. In order to achieve the maximum 85 N cable tension set point, the voltage is related to the current, which is related to the motor torque, which is in turn related to the cable tension. This is given as Vq = IqRs + ωeλpm = Te KT Rs + ωm√ 3KV,rad , (5.43) Te = Tl = KT Iq, (5.44) Tension (N) = Torque (Nm) radius (rad) . (5.45) Noting the winch radius of 0.25 in, the required torque is found to be 0.5397 Nm. Similarly, the required q-axis current is found to be 9.7900 A. Since there is no motor velocity when the CDCM has reached equilibrium, the q-axis voltage is equivalent to the voltage drop across the phase resistance. Thus, the q-axis voltage is found by determining the voltage across the resistor at equilibrium, which is found to be 0.4308 V. Under these assumptions, the position and velocity of the rotor are plotted. The current and total power is also plotted, where total power is defined as the sum of the mechanical and electrical power. These are shown in Figs. 5.7 and 5.8. While these results provide a good baseline performance, they are not very accurate with respect to the non-idealities of the motor. Therefore, the simulation is modified to simulate closed-loop feedback control of the motor in torque control. This simulation includes the motor parameters derived in Section 5.3. The current set-point is determined from the maximum cable tension of 85 N, which is found to be 9.7900 A. This is the same as the results in the previous simulation since the positional equilibrium is the same in both cases. Using Eqs. (5.14)-(5.22), and the current feedback equations derived in Eqs. (5.38) and (5.39), the motor is simulated in torque control. These results are shown in Figs. 5.9 and 5.10. As this simulation implements all of the non-ideal model parameters of the D6374 motor, these results should more accurately reflect the motor motion. As 109 (a) (b) Figure 5.7: Simulation results for the CDCM with the TRAC boom assuming constant voltage. This includes (a) the position and (b) the velocity of the motor with respect to time. (a) (b) Figure 5.8: Power requirement simulation results for the CDCM with the TRAC boom assuming constant voltage. This includes (a) the mechanical power and (b) the electrical power losses of the motor with respect to time. 110 (a) (b) Figure 5.9: Simulation results for the CDCM with the TRAC boom using torque control. This includes (a) the position and (b) the velocity of the motor with respect to time. (a) (b) Figure 5.10: Power requirement simulation results for the CDCM with the TRAC boom using torque control. This includes (a) the mechanical power and (b) the electrical power losses of the motor with respect to time. 111 such, it is clear that torque control is insufficient for accurately controlling the motor position. As shown by Fig. 5.9a, the equilibrium position has some steady- state error. This is caused by the friction coefficients, where the motor torque is at the desired set point, but the friction causes the useful mechanical torque to be reduced. As a result, the motor is offset from the desired equilibrium position. In theory, this steady-state error in the net torque can be as large as Bs,max, since the motor is unable to overcome this friction to start moving. In order to overcome the limitations of torque control, the cascaded position control loop is implemented in simulation. In this case, the speed set point and the current set point are both controlled by the cascade feedback loop. Thus, only the position set point needs to be determined. The position set point is found by running the PRB simulation with the TRAC boom material properties using a 85 N cable tension [20, 23]. The change in cable length is recorded and translated from units of meters to radians using the known winch radius. Note that the sign of the change in cable length is flipped to ensure a positive change in cable length corresponds to a positive beam deflection. The resulting motor position set point is found to be 2.4711 rads. Rather than setting the desired position directly, ODrive has developed a fil- tered position function that ensures the motor follows a smooth trajectory while in position control. This is because the bandwidth of the position filter is quite large, so the response of the unfiltered position control would result in fast, jerky motion. The filtered position control is implemented in simulation as well. The filtered position control is designed to emulate a critically damped mass-spring-damper with a user-defined bandwidth. The mass-spring-damper can be expressed as Fext = m d2x(t) dt2 + c dx(t) dt + kx(t). (5.46) The mass-spring-damper is tuned to have a bandwidth of 2 rad s . However, the definition of bandwidth in this context is ambiguous. In the current feedback controller, the bandwidth is defined as the 3-dB roll-off frequency of the transfer 112 function. This is confirmed by the proportional and integral gains in the ODrive configuration matching the calculated values. However, there are no proportional and integral gains in the ODrive configuration for the filtered position filter. Thus, the proportional and integral gains are derived using two different methods of bandwidth. The first is the 3-dB bandwidth as in the current feedback controller. The second is the natural frequency. Assuming a desired position pr(t), the tunable mass-spring-damper equation can be defined as 0 = d2pr(t) dt2 − d 2p(t) dt2 +Kp,r( dpr(t) dt − dp(t) dt ) +Ki,r(pr(t)− p(t)). (5.47) It is assumed that both d 2pr(t) dt2 and dpr(t) dt are zero. This is because the set point of a mass-spring-damper would not change. Therefore, the transfer function for this system can be derived as p(s) pr(s) = Ki,r s2 +Kp,rs+Ki,r . (5.48) The proportional and integral gains of this filtered position system are first derived using the same method as was used for the current controller gains. These gains correspond to a 3-dB magnitude at 2 rad s . The system of equations is defined explicitly as ∣∣∣∣ p(s)pr(s) ∣∣∣∣2 = 12 = K2i,r(Ki,r − ω2c )2 + (Kp,rωc)2 , (5.49) where the damping ratio and natural frequency are defined as ζ = 1 = Kp,r 2ωn , (5.50) ωn = √ Ki,r. (5.51) The resulting proportional and integral gains are found to be Kp,r = 6.2151 and Ki,r = 9.6569. 113 The proportional and integral gains of this filtered position system are also derived with a 2 rad s natural frequency. The transfer function is defined in this case as p(s) pr(s) = Ki,r s2 +Kp,rs+Ki,r = Ki,r s2 + 2ζωns+ ω2n . (5.52) For ζ = 1 and ωn = 2, the proportional and integral gains are found to be Kp,r = 4 and Ki,r = 4. In the following section, it is shown that the filtered position function that uses the bandwidth definition corresponding to the natural frequency has more accurate results than the bandwidth definition corresponding to the 3-dB fre- quency. Therefore, the simulations in the remainder of this section are run using the filtered position function defined in Eq. (5.52). Using the equations defined in Eqs. (5.14)-(5.22), along with the controller feedback equations derived in Eqs. (5.38)-(5.41), and the filtered position function in Eq. (5.52), the motor is simulated in position control. The results of this position control simulation are shown in Figs. 5.11 and 5.12. (a) (b) Figure 5.11: Simulation results for the CDCM with the TRAC boom using posi- tion control. This includes (a) the position and (b) the velocity of the motor with respect to time. 114 (a) (b) Figure 5.12: Power requirement simulation results for the CDCM with the TRAC boom using position control. This includes (a) the mechanical power and (b) the electrical power losses of the motor with respect to time. These results confirm the feasibility of the position controller for the ODrive D6374 motor. Despite the non-idealities in the motor, the controller is able to effectively track the desired position with zero steady-state error. It is also able to do so while implementing a relatively smooth trajectory due to the filtered position function. Based on these results, it is determined that a position controller is the optimal system for the CABLESSail CDCM controller. 5.6 Experimental Results The dynamic motor model is compared to the experimental results generated during testing of the polycarbonate beam CDCM in Section 4.4. This experiment applied a filtered position command to the ODrive, with position set points from 0.1 rotations to 0.8 rotations in 0.1 rotation increments. For each trial, the motor position, motor velocity, and motor torque are recorded over a 15 s interval. The equilibrium end-effector deflection values are recorded by taking the average value 115 between the time interval 12 s and 14 s for both the simulated and experimental results. The simulation results are compared to experimental results for motor position set points of 0.2, 0.4, and 0.6 rotations (1.2566, 2.5133, and 3.7699 rads). The load torque model is modified to reflect the CDCM model developed in Section 4.4. The PRB model is used to generate the end-effector deflection and the change in cable length between sample tension forces [20]. The necessary sample tension force bounds were shown to be in the range of (0 N, 200 N) in Section 4.4. A total of 801 data points are generated according to the Chebyshev nodes, and a 6th-order polynomial is fitted to each of the desired functions. The first function is the load torque vs. change in motor position, similar to the one described in Eq. (5.42). The second function relates the change in the end-effector position to the load torque. Since the first function derives a relationship between load torque and the change in motor position, This means these functions can be composed to define a function that relates the end-effector position to the change in motor position. These two functions are found to be Tl = −1.7857× 10−7p6 + 6.5142× 10−6p5 − 1.1776× 10−4p4 +0.0016p3 − 0.0195p2 + 0.2630p+ 1.6679× 10−6, (5.53) x1 = 0.0779T 6 l − 0.1305T 5l − 0.0550T 4l − 0.2694T 3l +0.1710T 2l + 0.8688Tl + 6.1969× 10−6. (5.54) These functions are identical to the functions found in Table 4.4. Using the motor model defined in Eqs. (5.14)-(5.22), the controller feedback equations derived in Eqs. (5.38)-(5.41), the load torque equation in Eq. (5.53), and the filtered position function in Eq. (5.52), the motor simulation is run in position control. The simulated load torque at each time t is used to deter- mine the simulated CDCM end-effector deflection. These results are shown in Figs. 5.13, 5.14, and 5.15. These results compare similarly to the results found in Section 4.4. Specifically, the motor is able to effectively track the desired motor position, but the torque and 116 (a) (b) (c) Figure 5.13: Simulation and experimental motor position results for the CDCM with the polycarbonate beam using position control. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 117 (a) (b) (c) Figure 5.14: Simulation and experimental motor torque results for the CDCM with the polycarbonate beam using position control. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 118 (a) (b) (c) Figure 5.15: Simulation and experimental end-effector deflection results for the CDCM with the polycarbonate beam using position control. Shown are the posi- tion set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 119 the end-effector deflection are greatly overestimated. These results indicate some amount of cable stretching. The disparity between the simulated and experimental end-effector deflection is shown in Table 5.8. Motor Set Point (rads) Simulated Deflection (mm) Experimental Deflection (mm) 1.2566 270.3179 45.17 2.5133 481.6845 162.17 3.7699 613.0873 323.97 Table 5.8: Simulated and experimental deflection of the end-effector with the polycarbonate beam. As the magnitude of displacement increases, the ratio of the experimental deflection to the simulated deflection also increases. This makes sense, as the change in cable stretch is likely greatest for lower cable tensions than higher tensions. Thus, as the CDCM moves from the zero set point to 0.2 rotations, the effect of the cable stretch is likely very high. In contrast, as the CDCM moves from 0.4 rotations to 0.6 rotations, the effect of the cable stretch is likely much smaller. In order to improve the simulation to more accurately model the dynamics of the CDCM, this cable stretching must be included in the model. A simple way to do this is to assume the cable stretching ratio is constant. Although it has been shown in Table 5.8 that this is not true, this is useful as a qualitative analysis to determine if the model can be significantly improved by simply adding the effect of cable stretching. For each of the motor set points discussed in Ta- ble 5.8, the simulated motor position that results in the experimental end-effector displacement is found. This is found by identifying the simulated end-effector position with the closest correspondence to the experimental end-effector position from the data generated in Section 5.6. Then, the motor position correspond- ing to this index is recorded. This method is used instead of the polynomial fit function because the motor position with respect to the end-effector position is not unique, as very large cable tensions (and, correspondingly, changes in motor 120 position) cause the magnitude of the end-effector displacement to change from increasing to decreasing. Since the motor position is not unique with respect to the end-effector displacement, this cannot be represented as a function. In the case where two different motor positions corresponded to the same end-effector displacement, the corresponding motor position that is less than the motor po- sition set point is selected. The recorded motor positions corresponding to the experimental end-effector displacements are shown in Table 5.9. Motor Set Point (rads) Experimental Deflection (mm) Corresponding Motor Position (rads) Position Ratio 1.2566 45.17 0.1991 0.1584 2.5133 162.17 0.7332 0.2917 3.7699 323.97 1.5345 0.4070 Table 5.9: Motor position corresponding to the experimental end-effector deflec- tion and the resulting position ratio between the corresponding motor position and the motor set point. These corresponding motor positions are lower than the true set points since the model assumes no cable stretching. Intuitively, this position ratio represents the change in position of the cables compared to the change in position of the motor. The modified position expression for the change in cable position compared to the change in motor position is given as pstretch(t) = ηprp(t), (5.55) where ηpr is the position ratio for the particular motor position set point. This modified cable position is used in the simulation, which propagates to the deter- mination of the load torque and the end-effector deflection. The results of this modified simulation are compared to the experimental re- sults for 0.2, 0.4, and 0.6 rotations (1.2566, 2.5133, and 3.7699 rads). These result are shown in Figs. 5.16, 5.17, and 5.18. These results show significant improvement compared to the previous results. 121 (a) (b) (c) Figure 5.16: Modified simulation and experimental motor position results for the CDCM with the polycarbonate beam using position control. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 122 (a) (b) (c) Figure 5.17: Modified simulation and experimental motor torque results for the CDCM with the polycarbonate beam using position control. Shown are the posi- tion set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 123 (a) (b) (c) Figure 5.18: Modified simulation and experimental end-effector deflection results for the CDCM with the polycarbonate beam using position control. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 124 Using a linear approximation between the input position set point and the motor position corresponding to the experimental end-effector position, the simulation is able to better match the end-effector position and motor torque. However, the position ratio is calculated uniquely for each position set point. The position ratio also varied greatly between trials. Thus, while it confirms that the motor model can effectively predict these parameters if it is given an accurate load torque, it does not provide an expression for the load torque that is generalizable when there is a nominal cable stretch. Further work would be needed to more accurately model this cable stretch, or otherwise replace the cables such that the stretch is negligible. The experimental q-axis current is derived using Eq. (5.19). Using this current, the simulated and experimental power requirements are plotted for the set points of 0.2, 0.4, and 0.6 rotations (1.2566, 2.5133, and 3.7699 rads). These are shown in Figs. 5.19 and 5.20. It is noted that the experimental loss power results are underestimated com- pared to the true loss power. While the q-axis current can be inferred from the motor torque, the d-axis current was not recorded during the experiments. As a result, the loss power is calculated using only the q-axis current and assuming the d-axis current is zero. According to simulation, this d-axis current never exceeded 0.5 mA of current at any point. Thus, the assumption that this d-axis current is zero appears to be valid. However, it is important to note this limitation and to consider determining the magnitude of the d-axis current in hardware. These results show that the simulation can predict the power requirements with reasonable accuracy. Notably, all of these results have more accurate results for higher cable tensions and beam deformations. Some of this is likely caused by cable stretching; however, there are other sources of potential error, such as a non-uniform beam or a nonzero initial beam deformation. It is also noted that the PRB model seems to have a bug in the deformation since it does not seem to consider the effects of gravity. 125 (a) (b) (c) Figure 5.19: Mechanical power requirement simulation and experimental results for the CDCM with the polycarbonate beam. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 126 (a) (b) (c) Figure 5.20: Electrical power losses simulation and experimental results for the CDCM with the polycarbonate beam. Shown are the position set points of (a) 1.2566 rads, (b) 2.5133 rads, and (c) 3.7699 rads. 127 5.7 Closing Remarks This chapter combined many of the concepts developed in the previous chapters to derive a model of the CDCM from the frame of reference of the motor. These results evaluated the accuracy of the PRB model used in many of the other chap- ters, demonstrated its limitations, and provided a method to improve its accuracy compared to a real CDCM. The results of this chapter also detail the steps to derive the power requirements of the prototype CABLESSail model, while also providing a quantitative analysis of these requirements. While the motor model was derived from theory, several limitations of this model exist and should be noted. The most significant approximation was likely the load torque model. As shown in this chapter, the cable stretch has a significant effect on the CDCM end-effector displacement as well as the load torque in the motor. However, it was also noted that this model was derived assuming a static equilibrium. As a result, the dynamics of the CDCM were not considered in this model. It is also noted that the CDCM likely introduces additional damping and inertia into the system that was not modeled in this simulation. As future work, the results of this chapter indicate that the beam and cable models will be the most important areas of improvement for this dynamic model. Overall, this chapter provided an in-depth analysis of the ODrive D6374 motor for the CABLESSail project. It also provided the theory and discussion of motor parameters as they pertain to the operation of the motor. As a result, this chapter can be used to evaluate the feasibility of PMSMs beyond the ODrive D6374 for future use in this project. Chapter 6 Conclusion The concept of the solar sail promises to push the boundaries of both spacecraft and space exploration. Current space missions are limited in scope largely by the cost and mass of fuel required for propulsion. Solar sails have none of these limitations, providing a lightweight structure and a theoretically infinite supply of propulsion. This gives them incredible flexibility in their range of feasibility. However, the design of the solar sail has several trade-offs. First, its lightweight construction limits its structural integrity. Second, its large sail area causes it to have a large inertia. Finally, the solar sail requires a method for attitude control as well as stabilization. These challenges must be overcome in order for the concept of the solar sail to become a viable spacecraft. This thesis detailed the work on the CABLESSail project, a novel solar sail concept that uses cable-driven actuation to control flexible booms in order to achieve stability and attitude control. Chapter 2 introduced the theory of the solar sail as well as the concept of the CDCM. This chapter also provided design criteria based on NASA specifications. Chapter 3 discussed some of the methods of estimating the end-effector pose using the known cable length or cable ten- sion. Chapter 4 reviewed the hardware design and implementation of the CDCM. It also provided experimental results for this work, which were compared to the simulations developed in the previous chapters. Finally, Chapter 5 developed a 128 129 high-fidelity motor model to model the dynamics of the cable robot. It also as- sessed the actuation and power requirements of the cable robot and provided both experimental and simulation results of these parameters. The analysis and hard- ware development discussed in this thesis lay the groundwork for the continued development of a full-scale CABLESSail prototype. This thesis work also leaves open several important aspects for the continuation of the CABLESSail project. Many of the boom and sail properties were inferred using the published works of existing solar sail projects. However, the particular boom and sail designs for the Solar Cruiser and Solar Polar Imager models are unclear. While this thesis provided the equations and the outline for a solar sail analysis using known properties, these properties must be updated to reflect the Solar Cruiser and Solar Polar Imager models once these are known. Much work is also needed to accurately model the statics and dynamics of the beam. This thesis assumed a static equilibrium relationship between the end-effector pose and the cable tensions and lengths. However, this could lead to excessive stress on the beam if the bounds of safe operation are dynamically exceeded. More significantly, the static model was shown to have some modeling error likely caused by cable stretching. In future work, it would be important to consider an estimation method for the end-effector pose. The most likely candidate is a Kalman Filter with sensor feedback. Overall, this thesis has aimed to provide much of the necessary background on the theory of both the solar sail and the CDCM for use with the CABLESSail prototype. This thesis has provided a generalized analysis of the many aspects of this work for ease of integration with future designs, while also providing quanti- tative results for the particular hardware used in the first three prototypes. Most significantly, these results show promise for the feasibility of the CABLESSail con- cept. With continued work, this may enable the viability of the solar sail concept for future spaceflight. References [1] M. S. F. Center, “Solar Sail Propulsion,” Apr 2005. [Online]. Available: https://www.nasa.gov/pdf/134645main solar sail fs.pdf [2] C. R. McInnes, Solar radiation pressure. London: Springer London, 1999, pp. 32–55. [Online]. Available: https://doi.org/10.1007/978-1-4471-3992-8 2 [3] S. Turyshev, D. Garber, L. Friedman, A. M. Hein, N. Barnes, K. Batygin, M. Brown, L. Cronin, A. Davoyan, A. Dubill, M. Eubanks, S. Gibson, D. Has- sler, N. Izenberg, P. Kervella, P. Mauskopf, N. Murphy, A. Nutter, C. Porco, and S. Worden, “Science opportunities with solar sailing smallsats,” Plane- tary and Space Science, p. 105744, Jul 2023. [4] R. Burton, V. Coverstone, J. Hargens-Rysanek, K. Ertmer, T. Botter, G. Benavides, B. Woo, D. Carroll, P. Gierow, and G. Farmer, UltraSail - Ultra-Lightweight Solar Sail Concept. AIAA, May 2005. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2005-4117 [5] C. R. McInnes, “Solar sail mission applications for non-Keplerian orbits,” Acta Astronautica, vol. 45, no. 4, pp. 567–575, 1999, third IAA International Conference on Low-Cost Planetary Missions. [Online]. Available: https: //www.sciencedirect.com/science/article/pii/S0094576599001770 [6] A. Davoyan, Extreme solar sailing for fast transit exploration of solar system and interstellar medium. AIAA, Nov 2021. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2021-4227 [7] D. A. Spencer, L. Johnson, and A. C. Long, “Solar sailing technology chal- lenges,” Aerospace Science and Technology, vol. 93, 2019. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S1270963818314391 [8] “What is Solar Sailing?” https://www.planetary.org/articles/what-is-solar- sailing, accessed: 2023-07-30. 130 131 [9] C. R. McInnes, Solar sail orbital dynamics. London: Springer London, 1999, pp. 112–170. [Online]. Available: https://doi.org/10.1007/978-1-4471- 3992-8 4 [10] J. P. Eastwood, D. O. Kataria, C. R. McInnes, N. C. Barnes, and P. Mulligan, “Sunjammer,” Weather, vol. 70, no. 1, pp. 27–30, 2015. [Online]. Available: https://rmets.onlinelibrary.wiley.com/doi/abs/10.1002/wea.2438 [11] “Solar Cruiser: Enabling new vistas for Heliophysics Science.” [Online]. Available: https://science.nasa.gov/heliophysics/programs/solar-cruiser [12] D. Thomas, K. Kobayashi, B. Mike, Q. Bean, P. Capizzo, K. Clements, L. Fabisinski, J. Garcia, and S. Steve, Solar Polar Imager Concept. AIAA, Nov 2020. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2020- 4060 [13] D. Mangus and A. Heaton, “Solar Sail Control Actuator Concepts,” in Pro- ceedings of the Solar Sail Technology and Applications Conference. NASA, Sep 2004. [14] A. Heaton, Solar Sail Roadmap Mission GN&C Challenges. AIAA, Aug 2005. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2005-6170 [15] J. Inness, D. Tyler, B. Diedrich, S. Ramazani, and J. Orphee, “Momentum Management Strategies for Solar Cruiser and Beyond (ISSS 2023),” in Pro- ceedings of the 6th International Symposium on Space Sailing (ISSS 2023). ISSS, Jun 2023. [16] J. Liu, S. Rong, F. Shen, and N. Cui, “Dynamics and Control of a Flexible Solar Sail,” Mathematical Problems in Engineering, vol. 2014, Nov 2014. [17] F. Zhang, S. Gong, and H. Baoyin, “Three-Axes Attitude Control of Solar Sail Based on Shape Variation of Booms,” Aerospace, vol. 8, no. 8, 2021. [Online]. Available: https://www.mdpi.com/2226-4310/8/8/198 [18] R. Caverly, K. Bunker, N. Raab, V. L. Nguyen, G. Sarner, Z. Chen, T. Dou- vier, R. L. Lyman, O. Sorby, B. Sorge, E. Teshale, and B. Toriseva, “Solar Sail Attitude Control Using Shape Modulation: The Cable-Actuated Bio-inspired Lightweight Elastic Solar Sail (CABLESSail) Concept,” in Proceedings of the 6th International Symposium on Space Sailing (ISSS 2023). ISSS, Jun 2023. 132 [19] S. K. Mahapatra, K. P. Ashwin, and A. Ghosal, “3D printed cable-driven continuum robots with generally routed cables: modeling and experiments,” ArXiv, vol. abs/2003.04593, 2020. [20] P. Rao, Q. Peyron, S. Lilge, and J. Burgner-Kahrs, “How to Model Tendon-Driven Continuum Robots and Benchmark Modelling Performance,” Frontiers in Robotics and AI, vol. 7, 2021. [Online]. Available: https://www.frontiersin.org/articles/10.3389/frobt.2020.630245 [21] “NASA SBIR/STTR 2022 Program Solicitation,” 2022. [Online]. Available: https://sbir.gsfc.nasa.gov/solicit/79612/detail?data=ch9 [22] “Space Technology Research Grants Program, Early Career Faculty Ap- pendix,” NASA Space Technology Mission Directorate, Feb 2022. [23] J. A. Banik and T. W. Murphey, “Performance Validation of the Trian- gular Rollable and Collapsible Mast,” in Proceedings of the 24th Annual AIAA/USU Conference on Small Satellites. AIAA, 2010. [24] N. Glascock, B. Huber, C. Cantrall, W. Evonosky, E. Robinson, Y. Dharmadasa, and K. Baker, “MAFSA: Mars Autonomous and Foldable Solar Array,” New Space, vol. 6, no. 4, pp. 308–319, 2018. [Online]. Available: https://doi.org/10.1089/space.2018.0020 [25] B. Wie, “Solar Sail Attitude Control and Dynamics, Part 1,” Journal of Guidance, Control, and Dynamics, vol. 27, no. 4, pp. 526–535, 2004. [Online]. Available: https://doi.org/10.2514/1.11134 [26] A. F. Heaton and A. Artusio-Glimpse, An Update to the NASA Reference Solar Sail Thrust Model. AIAA, Aug 2015. [Online]. Available: https://arc.aiaa.org/doi/abs/10.2514/6.2015-4506 [27] A. F. Heaton, N. Ahmad, and K. C. Miller, “Near Earth Asteroid Scout Thrust and Torque Model,” in Proceedings of the International Symposium on Solar Sailing (ISSS 2017), Jan 2017. [28] H. Dang, D. Yang, and Y.-C. Liu, “Improvements in the Shear Locking and Spurious Zero Energy Modes by using Chebyshev Finite Element Method,” Journal of Computing and Information Science in Engineering, vol. 19, Nov 2018. 133 [29] S. S. Rao, Approximate Analytical Methods. John Wiley & Sons, Ltd, 2006, ch. 17, pp. 647–699. [Online]. Available: https://onlinelibrary.wiley.com/ doi/abs/10.1002/9780470117866.ch17 [30] K. Bunker and R. Caverly, “Modular Dynamic Modeling and Simulation of a Cable-Actuated Flexible Solar Sail,” in Proceedings of the 2024 AIAA SciTech Conference. AIAA, 2024, under review. [31] B. Kro¨se, B. Krose, P. van der Smagt, and P. Smagt, “An introduction to neural networks,” Journal of Computer Science, vol. 48, Jan 1993. [32] N. Kanta, “Deep Learning,” https://nikhilkanta.github.io/-2019-06-18-deep- learning, Jun 2019, accessed: 2023-07-30. [33] H. Hassan, A. Negm, M. Zahran, and O. Saavedra, “Assessment of Artificial Neural Network for bathymetry estimation using High Resolution Satellite imagery in Shallow Lakes: Case Study El Burullus Lake.” International Wa- ter Technology Journal, vol. 5, Dec 2015. [34] S. Ronaghan, “Deep learning: Which loss and activation functions should I use?” https://towardsdatascience.com/deep-learning-which-loss- and-activation-functions-should-i-use-ac02f1c56aa8, Aug 2019, accessed: 2023-07-30. [35] J. Brownlee, “How to choose an activation function for deep learning,” https://machinelearningmastery.com/choose-an-activation-function-for- deep-learning/, Jan 2021, accessed: 2023-07-30. [36] “ODrive Motor Guide,” https://docs.google.com/spreadsheets/d/ 12vzz7XVEK6YNIOqH0jAz51F5VUpc-lJEs3mmkWP1H4Y/edit#gid=0, accessed: 2023-07-30. [37] ODrive, “ODrive Arduino Library,” https://github.com/odriverobotics/ ODrive/tree/master/Arduino/ODriveArduino, 2022, accessed: 2023-07-30. [38] “Vicon,” https://www.vicon.com/, Jun 2023, accessed: 2023-07-30. [39] I. A & C Plastic, “PALSUN Physical Properties Sheet,” https: //www.acplasticsinc.com/media/Tech%20sheets/TRUPOLY%20GP% 20POLYCARBONATE.pdf, accessed: 2023-07-30. 134 [40] Sonelastic, “Modulus of elasticity and Poisson’s coefficient of polymeric ma- terials,” https://www.sonelastic.com/en/fundamentals/tables-of-materials- properties/polymers.html, accessed: 2023-07-30. [41] MatWeb, “AISI 1095 Steel, as rolled,” https://www.matweb.com/ search/datasheet.aspx?MatGUID=8bab8f67515740b0af82c9b119259b80, ac- cessed: 2023-07-30. [42] S. Lee, T. Lemley, and G. Keohane, “A comparison study of the commuta- tion methods for the three-phase permanent magnet brushless DC motor,” in Electrical Manufacturing Technical Conference 2009, ser. Electrical Man- ufacturing Technical Conference 2009: Electrical Manufacturing and Coil Winding Expo, Dec 2009, pp. 49–55. [43] M. Hein, “Demystifying BLDC Motor commutation: Trap, Sine, & FOC,” https://www.ti.com/jp/lit/pdf/slyp711, 2020, accessed: 2023-07-30. [44] D. Collins, “Field oriented control vs. sinusoidal commutation,” https://www.motioncontroltips.com/faq-whats-the-difference-between- field-oriented-control-and-sinusoidal-commutation/, May 2016, accessed: 2023-07-30. [45] Y.-J. Goh and O. Kim, “Linear Method for Diagnosis of Inter-Turn Short Circuits in 3-Phase Induction Motors,” Applied Sciences, vol. 9, no. 22, 2019. [Online]. Available: https://www.mdpi.com/2076-3417/9/22/4822 [46] W. C. Duesterhoeft, M. W. Schulz, and E. Clarke, “Determination of Instan- taneous Currents and Voltages by Means of Alpha, Beta, and Zero Com- ponents,” Transactions of the American Institute of Electrical Engineers, vol. 70, no. 2, pp. 1248–1255, 1951. [47] R. H. Park, “Two-reaction theory of synchronous machines generalized method of analysis-part I,” Transactions of the American Institute of Elec- trical Engineers, vol. 48, no. 3, pp. 716–727, 1929. [48] “MTPA Control Reference,” https://www.mathworks.com/help/mcb/ref/ mtpacontrolreference.html, accessed: 2023-07-30. [49] R. Parsons, “Why most hobby grade BLDC out runners are actually per- manent magnet synchronous motors (PMSM),” https://things-in-motion. blogspot.com/2018/12/why-most-hobby-grade-bldc-out-runners.html, Dec 2018, accessed: 2023-07-30. 135 [50] “ODrive API Reference,” https://docs.odriverobotics.com/v/latest/fibre types/com odriverobotics ODrive.html, accessed: 2023-07-30. [51] “Controller,” https://docs.odriverobotics.com/v/latest/manual/control. html, accessed: 2023-07-30. Appendix A Solar Sail Beam Deformation for the Collapsible Tubular Mast Beam The boom is modeled according to the CTM design given by Fig. 2.5. The tubular cross-section is approximated as a hollow disk with an inner diameter of 9.57 mm and an outer diameter of 9.85 mm. It is assumed that the deformation will occur in the longitudinal direction, thus the elastic modulus of E11, Poisson’s ratio of v12, and the shear modulus of G12 will be used to determine the magnitude of deformation, given in Table 2.4. Figs. A.1 and A.2 illustrate the beam deformation required for a CTM beam using these material and cross-section properties. Each of these plots assumes 20 distinct beam element disks for cable routing. 136 137 (a) (b) (c) Figure A.1: Pitch/Yaw torque generated from lateral boom deformation for Solar Cruiser with a 2 cm cable radius and 8.2 N of maximum tension. The plots include the torque generated at (a) 0° SIA, (b) 35° SIA normal to the axis of deformation, and (c) 35° SIA along the axis of deformation. 138 (a) (b) (c) Figure A.2: Pitch/Yaw torque generated from lateral boom deformation for Solar Polar Imager with a 2 cm cable radius and 6.45 N of maximum tension. The plots include the torque generated at (a) 0° SIA, (b) 35° SIA normal to the axis of deformation, and (c) 35° SIA along the axis of deformation. Appendix B Additional Cable-Driven Continuum Manipulator Figures 139 140 B.1 Iteration I Figure B.1: Engineering Diagram of the first iteration of the CDCM base. All units are in mm. 141 Figure B.2: Isometric model of the first iteration of the CDCM base with the motor enclosure removed. 142 B.2 Iteration III Figure B.3: Engineering Diagram of the third iteration of the CDCM base. All units are in mm. 143 Figure B.4: Isometric model of the third iteration of the CDCM base with the motor enclosures removed. Figure B.5: Isometric model of the interior of the third iteration of the CDCM base. 144 Figure B.6: Isometric model of the tape measure TRAC boom with attached beam elements. Appendix C Prototype Cable-Driven Continuum Manipulator Parts List Item Seller Part Number Purpose Quantity Filament Amazon 3D PLA- 1KG1.75- BLK 3-D printed parts 5 T-Slotted Framing McMaster- Carr 47065T101 CDCM frame 1 Ball Bearing McMaster- Carr 60355K505 Support spool and reduce friction 4 T-Slotted Fastener McMaster- Carr 47065T142 Attach components to T-Slotted Framing 9 145 146 T-Slotted Fastener (Button Head) McMaster- Carr 47065T139 Attach motor enclosure plate to T-Slotted Framing (smaller head for clearance) 2 10-32 Socket Head Cap Screw McMaster- Carr 90128A944 Attach baseplate to endcap 1 Steel Hex Nut McMaster- Carr 90480A195 Attach beam insert to frame 1 10-32 Split Washer McMaster- Carr 91102A740 Prevent loosening of components from vibrations 1 10-32 Washer McMaster- Carr 92141A011 Load distribution of beam insert with respect to frame 1 M4 8 mm Alloy Steel Socket Head Screw McMaster- Carr 91274A115 Attach motor to enclosure plate 1 M3 8 mm Alloy Steel Socket Head Screw McMaster- Carr 91274A103 Attach encoder to enclosure 1 147 M3 10 mm Alloy Steel Socket Head Screw McMaster- Carr 91274A105 Attach enclosure plate to enclosure 1 ODrive Pro ODrive Store N/A Motor Controller 4 USB Isolator ODrive Store N/A Prevent ground loops to USB device 4 ODrive Pro Heat Spreader Plate ODrive Store N/A Dissipate heat 4 Connector Pack for ODrive ODrive Store N/A Connection wires from ODrive to Arduino 4 AMT212B- V-OD ODrive Store N/A Absolute encoder 4 Arduino Giga R1 Arduino Store ABX00063 CDCM controller 1 Arduino Shield Arduino Store A000080 Mounting headers for connection to ODrive 1 Arduino 10 pin Stackable Header Sparkfun Store PRT-11376 Connecting Arduino Shield to Arduino 4 148 Arduino 8 pin Stackable Header Sparkfun Store PRT-9279 Connecting Arduino Shield to Arduino 10 Female Header 10 pin Sparkfun Store PRT-11896 Routing voltage and ground to Nano-Fit Housing 2 Female 2x18 Header Sparkfun Store PRT-16581 Connecting pins on Arduino Shield 2 Nano-Fit Receptacle Housing Digikey 1053071204 Housing for connecting ODrive cables to Arduino 4 Nano-Fit Vertical Header Digikey 1053091304 Header for connecting ODrive cables to Arduino 4 Wire Wrap 30 AWG Digikey R30-5100 Connecting headers and pins on the Arduino Shield 1 Solder Digikey 24-6040- 0061 Soldering headers and pins on the Arduino Shield 1 Hook-up wire (red) Digikey 3079 RD005 Power connection between components 1 149 Hook-up wire (black) Digikey 3079 BK005 Power connection between components 2 Ring connector 14-16 AWG Digikey 0190540110 Connecting hook-up wire to power supply 8 Ring connector 18-22 AWG Digikey 0190540037 Connecting AC power cable to power supply 6 Female bullet connector Digikey 0190390016 Connecting hook-up wire to motors 12 AC Power cable Digikey P010-012 Power cable from AC outlet to power supply 1 Power Supply Digikey LRS-600-24 AC/DC power converter and power supply for ODrives 2 SureStep Regen Clamp Automation- Direct STP- DRVA-RC- 050A Regen clamp for power between power supply and ODrive 4 USB-C to USB-A Cable Amazon 124287 Connecting to Arduino or ODrive 5 Kevlar Line Amazon EK5583 Cables for CDCM actuation 1 150 25 ft by 1 in Tape Measure Amazon 30-454 Constructing tape measure TRAC boom 1 Polycarbon- ate beam Grainger 2XPV6 Beam for CDCM prototype 1 9.5 mm pearl hard marker Vicon N/A Tracking pose of CDCM 1 Table C.1: Parts list for all components required for construction of the third iteration of the CDCM.