Citation |

- Permanent Link:
- https://ufdc.ufl.edu/UFE0049844/00001
## Material Information- Title:
- Design of Serial Link Manipulators for Desired End Effector Impedances
- Creator:
- Jones, Jared A
- Place of Publication:
- [Gainesville, Fla.]
Florida - Publisher:
- University of Florida
- Publication Date:
- 2016
- Language:
- english
- Physical Description:
- 1 online resource (150 p.)
## Thesis/Dissertation Information- Degree:
- Doctorate ( Ph.D.)
- Degree Grantor:
- University of Florida
- Degree Disciplines:
- Mechanical Engineering
Mechanical and Aerospace Engineering - Committee Chair:
- BANKS,SCOTT ARTHUR
- Committee Co-Chair:
- CRANE,CARL D,III
- Committee Members:
- FREGLY,BENJAMIN J
BOVA,FRANK J - Graduation Date:
- 12/17/2016
## Subjects- Subjects / Keywords:
- Design optimization ( jstor )
End effectors ( jstor ) Experimentation ( jstor ) Inertia ( jstor ) Modeling ( jstor ) Robots ( jstor ) Seas ( jstor ) Stiffness ( jstor ) Torque ( jstor ) Trajectories ( jstor ) Mechanical and Aerospace Engineering -- Dissertations, Academic -- UF robots - Genre:
- bibliography ( marcgt )
theses ( marcgt ) government publication (state, provincial, terriorial, dependent) ( marcgt ) born-digital ( sobekcm ) Electronic Thesis or Dissertation Mechanical Engineering thesis, Ph.D.
## Notes- Abstract:
- In this dissertation, the design of a serial link manipulator intended to display an end effector impedance is explored. Historically, serial link manipulators were intended to be used for, and thus designed to perform, pick and place tasks with minimal interaction with their environment. However, as the applications where robots are desired to be used evolve, the interactions these robots have with their environment become much more important. Controlling both the position of the end effector and the forces applied by this end effector become desirable attributes for a robot interacting with its environment. This was the motivation for choosing end effector impedance as the metric by which to design serial link manipulators. In this dissertation, background information on the rational and design of series elastic actuators is provided. A series elastic actuator is designed, built, tested, and characterized. Knowledge gained from the single series elastic actuator is used to simulate, build, and test a two link manipulator actuated by series elastic actuators. Information gained from the series elastic actuator characterization and the two link robot actuated by series elastic actuators will be used to create a hypothetical six degree of freedom serial link manipulator actuated by series elastic actuators. This hypothetical six degree of freedom model will be subjected to forces at its end effector and the design of this serial link manipulator will be optimized to match as closely as possible a desired end effector impedance. ( en )
- General Note:
- In the series University of Florida Digital Collections.
- General Note:
- Includes vita.
- Bibliography:
- Includes bibliographical references.
- Source of Description:
- Description based on online resource; title from PDF title page.
- Source of Description:
- This bibliographic record is available under the Creative Commons CC0 public domain dedication. The University of Florida Libraries, as creator of this bibliographic record, has waived all rights to it worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law.
- Thesis:
- Thesis (Ph.D.)--University of Florida, 2016.
- Local:
- Adviser: BANKS,SCOTT ARTHUR.
- Local:
- Co-adviser: CRANE,CARL D,III.
- Statement of Responsibility:
- by Jared A Jones.
## Record Information- Source Institution:
- UFRGP
- Rights Management:
- Copyright Jones, Jared A. Permission granted to the University of Florida to digitize, archive and distribute this item for non-profit research and educational purposes. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder.
- Classification:
- LD1780 2016 ( lcc )
## UFDC Membership |

Downloads |

## This item has the following downloads: |

Full Text |

PAGE 1 1 DESIGN OF SERIAL LINK MANIPULATORS FOR DESIRED END EFFECTOR IMPEDANCES By JARED ANTHONY JONES A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2016 PAGE 2 2 2016 Jared Anthony Jones PAGE 3 3 To my family PAGE 4 4 ACKNOWLEDGMENTS I thank my parents and sisters for their support offered over the course of completing this degree and everything I have encountered in life until now. I would also like to thank my principle investigator Dr. Scott Banks, and my laboratory peers Nick Dunbar, Dr. Ira Hill, Dr. Tim Elmore, Chih-Chiang Chang, Dr. Bryan Park, Dr. Davi d Walker, Pierre Kremer, and Guillermo Rodriguez. Last but not least, I would like to thank Dr. Chris Lightcap for his considerable guidance and support provided to me over the course of this degree. PAGE 5 5 TABLE OF CON T ENTS page ACKNOWLEDGMENTS ................................ ................................ ................................ .. 4 LIST OF TABL ES ................................ ................................ ................................ ............ 8 LIST OF FIGURES ................................ ................................ ................................ .......... 9 LIST OF ABBREVIATIONS ................................ ................................ ........................... 11 ABSTRACT ................................ ................................ ................................ ................... 12 CHAPTER 1 INTRODUCTION ................................ ................................ ................................ .... 14 1.1 Ba ckground Information ................................ ................................ .................... 14 1.2 Robots as Impedances ................................ ................................ ..................... 14 1.3 Stiff Robotic Platforms ................................ ................................ ...................... 16 1.3.1 Rotating Link Example ................................ ................................ ............. 17 1.3.2 Stiff Actuators in Torque Mode ................................ ................................ 17 1.4 Soft Robotic Platforms ................................ ................................ ...................... 18 1.5 The Series Elastic Actuator ................................ ................................ ............... 19 1.6 Robot Design for Desired End Effector Impedance ................................ .......... 26 2 DESIGN AND TESTING OF A SERIES ELASTIC ACTUATOR ............................. 28 2.1 SEA Design ................................ ................................ ................................ ...... 28 2.1.1 SEA Design 1 ................................ ................................ .......................... 28 2.1.2 SEA Design 2 ................................ ................................ .......................... 29 2.1.3 SEA Design 3 ................................ ................................ .......................... 30 2.1.4 SEA Design 4 ................................ ................................ .......................... 31 2.1.5 SEA Design 5 ................................ ................................ .......................... 32 2.2 Elasti c Element Design ................................ ................................ ..................... 33 2.2.1 Soft Elastic Element Design ................................ ................................ .... 34 2.2.2 Stiff Elastic Element Design ................................ ................................ .... 36 2.3 Communications Architecture ................................ ................................ ........... 37 2.3.1 Communications Architecture Design 1 ................................ ................... 37 2.3.2 Communications Architecture Design 2 ................................ ................... 38 2.3.3 Communications Architecture Desi gn 3 ................................ ................... 39 2.4 SEA Model ................................ ................................ ................................ ........ 40 2.4.1 BLDC MODEL ................................ ................................ ......................... 40 2.4.2 HD Output Shaft Model ................................ ................................ ........... 41 2.4.3 Output Shaft Model ................................ ................................ .................. 42 2.4.4 Harmonic Drive Model ................................ ................................ ............. 43 2.4.5 Elastic Element Model ................................ ................................ ............. 43 PAGE 6 6 2.4.6 Total SEA Model ..................................................................................... 44 2.5 SEA Characterization ........................................................................................ 44 2.5.1 SEA STATIC TESTING ........................................................................... 44 2.5.3 Determining Higher Order SEA Information ............................................ 50 2.5.5 Shaft Inertia Calculations ......................................................................... 51 2.5.6 SEA Model Fitting .................................................................................... 53 2.6 SEA Model Discussion ...................................................................................... 54 2.7 SEA Design and Characterization Conclusion .................................................. 55 3 TWO DOF PLANAR MANIPULATOR OPTIMIZATION .......................................... 57 3.1 Introduction ....................................................................................................... 57 3.2 Defining a Set of Differential Equations for Two DOF Manipulator Actuated .............................................................................................................. 57 3.3 Two DOF Link Derivation .................................................................................. 59 3.3.1 Proximal Link Inertia Derivation ............................................................... 59 3.3.2 Distal Link Inertia Derivation .................................................................... 60 3.4 The Desired Impedance Problem ..................................................................... 61 3.5 Choosing an Optimizer ..................................................................................... 63 3.6 Using GPOPSII ................................................................................................ 65 3.7 Formulating Serial Link Design Problems for GPOPSII ................................... 66 3.8 Initial Guess Generation for GPOPSII ............................................................. 67 3.9 Scaling the Optimal Control Problem for GPOPSII .......................................... 68 3.10 Design of Experiments for GPOPS-II and Physical Validation ........................ 68 3.11 Two DOF Free Parameter Bounds for GPOPSII ........................................... 71 3.12 Two DOF Initial Guess for GPOPSII .............................................................. 72 3.13 Two DOF GPOPS-II Optimization Results ...................................................... 73 3.14 Two DOF Optimization Discussion ................................................................ 76 3.15 Two DOF Optimization Conclusion ................................................................ 77 4 TWO DOF PLANAR MANIPULATOR TESTING .................................................... 78 4.1 Validating the Optimizer .................................................................................... 78 4.2 Two DOF Robot Design .................................................................................... 78 4.3 Experimental Methods ...................................................................................... 78 4.4 Two DOF Experimental Torques ...................................................................... 81 4.5 Trial 1 Experimental Results ............................................................................. 82 4.6 Trial 1 Discussion .............................................................................................. 82 4.7 Trial 2 Experimental Results ............................................................................. 84 4.8 Trial 2 Discussion .............................................................................................. 84 4.9 Trial 3 Experimental Results ............................................................................. 85 4.10 Trial 3 Discussion ............................................................................................ 86 4.11 Trial 4 Experimental Results ........................................................................... 87 4.12 Trial 4 Discussion ............................................................................................ 87 4.13 Two DOF Experimentation Discussion ........................................................... 88 4.14 Two DOF Experimentation Conclusion ........................................................... 89 PAGE 7 7 5 OPTIMAL DESIGN OF A SIX DOF SERIAL LINK MANIPULATOR ACTUATED BY SERIES ELASTIC ACTUATORS ...................................................................... 91 5.1 Introduction ....................................................................................................... 91 5.2 Historical Optimality Conditions for the Design of a Serial Link Manipulator ..... 91 .................................. 93 5.4 Defining a Set of Differential Equations for Six DOF Manipulator Actuated .............................................................................................................. 95 5.5 Six DOF Cost Function ..................................................................................... 96 5.6 Six DOF Design of Experimentation for GPOPSII ........................................... 96 5.7 Six DOF Initial Parameters ............................................................................... 97 5.8 Six DOF Initial Guess ........................................................................................ 98 5. 9 Six DOF GPOPS-II Optimization Results .......................................................... 99 5.10 Six DOF GPOPS-II Optimization Discussion ................................................ 100 5.10.1 Six DOF Mesh Issues .......................................................................... 101 5.10.2 Six DOF Computation Time Issues ..................................................... 102 5.10.3 Six DOF Inverse Kinematics ................................................................ 102 5.10.4 Six DOF Numerical Issues .................................................................. 103 5.11 Optimal Design of a Serial Link Manipulator Actuated by Series Elastic Actuators Conclusion ......................................................................................... 105 6 CONCLUSION ...................................................................................................... 106 6.1 Review of Dissertation .................................................................................... 106 6.2 Future Work .................................................................................................... 106 APPENDIX A SEA INERTIA VALUES ........................................................................................ 107 B INERTIA DERIVATION OF TWO DOF LINKS ...................................................... 109 C TWO DOF GENERAL OPTIMIZATION GPOPS-II RESULTS .............................. 114 D TWO DOF SPRINGS PRE-SPECIFIED GPOPS-II RESULTS ............................. 122 E SIX DOF INITIAL GUESSES FOR GPOPSII ....................................................... 130 F SIX DOF LOW RESOLUTION GPOPS-II OPTIMIZATION RESULTS ................. 134 G INERTIA DERIVATION OF SIX DOF LINKS ........................................................ 137 H TWO AND SIX LINK MODEL ENERGY VERIFICATION ..................................... 143 LIST OF REFERENCES ............................................................................................. 145 BIOGRAPHICAL SKETCH .......................................................................................... 150 PAGE 8 8 LIST OF TABLES page 2-1 Elastic element properties .................................................................................. 46 2-2 Harmonic Drive Models ...................................................................................... 49 2-3 SEA friction model coefficients ........................................................................... 53 3-1 Mass and center of mass locations for SEA components ................................... 58 3-2 Two DOF planar robot initial guess performance ............................................... 73 3-3 Two DOF planar robot optimization performance ............................................... 74 3-4 Two DOF planar manipulator initial guess performance ..................................... 75 3-5 Two DOF planar robot with springs pre-selected optimization performance ...... 75 4-1 Measured final proximal torque averages ........................................................... 81 4-2 Measured final distal torque averages ................................................................ 82 4-3 Trial 1 GPOPS-II selected trajectory. .................................................................. 82 4-4 Trial 1 experimental results. ................................................................................ 82 4-5 Trial 2 GPOPS-II selected trajectory. .................................................................. 84 4-6 Trial 2 experimental results. ................................................................................ 84 4-7 Trial 3 GPOPS-II selected trajectory. .................................................................. 85 4-8 Trial 3 experimental results. ................................................................................ 86 4-9 Trial 4 GPOPS-II selected trajectory. .................................................................. 87 410 Trial 4 experimental results. ................................................................................ 87 5-1 Six DOF steady state initial guess EE positions ................................................. 98 5-2 Condition numbers for each manipulator considered in GPOPS-II analysis. .... 103 PAGE 9 9 LIST OF FIGURES Figure page 1-1 Block diagram of Series Elastic Actuator. ........................................................... 20 1-2 Hypocycloid mechanism from the HypoSEA with the tension spring being stretched by distance d ....................................................................................... 23 2-1 Solidworks rendering of SEA design one. .......................................................... 29 2-2 Solidworks rendering of SEA design 1 cross-sectional view. ............................. 29 2-3 Solidworks rendering of SEA design 2. .............................................................. 30 2-4 Solidworks rendering of SEA design 2 cross-sectional view. ............................. 30 2-5 Solidworks rendering of SEA design 3. .............................................................. 31 2-6 Solidworks rendering of SEA design 3 cross-sectional view. ............................. 31 2-7 Solidworks rendering of SEA design 4. .............................................................. 32 2-8 Solidworks rendering of SEA design 4 cross-sectional view. ............................. 32 2-9 Solidworks rendering of SEA design 5. .............................................................. 33 210 Solidworks rendering of SEA design 5 cross-sectional view. ............................. 33 211 Robonaut SEA torsional springs. ........................................................................ 35 212 A novel compact torsional spring for Series Elastic Actuators. ........................... 35 213 Solidworks rendering of soft elastic element. ...................................................... 36 214 Solidworks rendering of stiff elastic element. ...................................................... 37 215 Communications architecture one for the SEA. .................................................. 38 216 Communication architecture two for the SEA. .................................................... 39 217 Communication architecture 3 for the SEA. ........................................................ 41 218 SEA static testing experimental setup. ............................................................... 45 219 Stiff EE measured and modelled torques. .......................................................... 47 220 Soft EE measured and modeled torques. ........................................................... 47 PAGE 10 10 221 ..................................................... 48 222 .................................................. 48 223 Vertical SEA testing setup. ................................................................................. 50 224 SEA power spectral densities. ............................................................................ 51 225 Solidworks cross-sectional models. .................................................................... 52 226 SolidWorks model of SEA housing for inertia analysis. ...................................... 52 227 Friction model for each rotating SEA shaft. ........................................................ 54 228 Fitted model validation with current, actual output velocity, and modelled output velocity. .................................................................................................... 55 3-1 SEA Centers Of Mass and reference frame. ...................................................... 59 3-2 Rendering of the proximal link for a general two actuator robot. ........................ 60 3-3 Rendering of the distal link for a general two actuator robot. .............................. 60 3-4 Rendering of a general two DOF robot actuated by SEAs.. ............................... 61 3-5 Matlab rendering of the pseudo step used in two DOF optimization. .................. 70 3-6 Renderings of both two DOF manipulator joint solutions that drive the end effector to the same position. .............................................................................. 71 3-7 Rendering of the GPOPS-II initial guess manipulator. ........................................ 75 3-8 Rendering of the optimal manipulator selected by GPOPS-II. ............................ 75 3-9 Rendering of the optimal manipulator with springs stiffnesses pre-specified. ..... 75 4-1 Four loading conditions applied to the two DOF manipulator in experiments. .... 80 5-1 Rendering of geometric information describing 6 DOF links. .............................. 94 5-2 A Mitsubishi PA10-6C serial link manipulator .................................................... 98 PAGE 11 11 LIST OF ABBREVIATIONS BLDC BrushLess Direct Current (electric motor) DOF Degree Of Freedom NLP Nonlinear Programming SEA Series Elastic Actuator PAGE 12 12 Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy DESIGN OF SERIAL LINK MANIPULATORS FOR DESIRED END EFFECTOR IMPEDANCES By Jared Anthony Jones December 2016 Chair: Scott Banks Major: Mechanical Engineering In this dissertation the design of a serial link manipulator intended to display an end effecto r impedance is explored Historically, serial link manipulators were intended to be used for, and thus designed to perform, pick and place tasks with m inimal interaction with the ir environment. However, as the applications where robots are desir ed to be used evolve, the interactions these robots have with the ir environment become much more important. Controlling both the position of the end effector and the forces applied by this end effector become desirable attributes for a robot interacting wi th its environment. This was the motivation for choosing end effector impedance as the metric by which to design serial link manipulators. In this dissertation, b ackground information on the rational and design of series elastic actuators is provided A s eries elastic actuator is designed, built, tested, and characterized. Knowledge gained from the single series elastic actuator is used to simulate, build, and test a two link manipulator actuated by series elastic actuators. Information gained from the ser ies elastic actuator characterization and the two link robot actuated by series elastic actuators will be used to create a hypothetical six degree of freedom serial link manipulator actuated by series elastic actuator s This PAGE 13 13 hypothetical six degree of free dom model will be subjected to forces at its end effector and the design of this serial link manipulator will be optimized to match as closely as possible a desired end effector impedance. PAGE 14 14 CHAPTER 1 INTRODUCTION 1.1 Background Information Neville Hogan stated that interaction between two physical systems is that one must physically complement the other: Along any degree of freedom if one is an impedance, then the other must be an admittance and vice versa. [ ] When a manipu lator is mechanically coupled to its environment, to insure physical compatibility with the environmental admittance, the manipulator should assum [1] Originating in industrial applications, the f irst serial link manipulato rs were designed to perform pick and place tas ks in well defined environments [2] More recently there has been a push to incorporate serial link manipulators into environments to perform tasks that require fine control of both forces and motions. It has been found that manipulators designed for pick and place tasks well suited to e merging manipulation needs because of their lack of environmental sensing [2] Thus, in order to achieve fine control of both forces and motions a re design of the serial link manipulator is in order. In this dissertation I will propose a method to find the optimal design of a serial link 6R manipulator based on a d esired end effector impedance I plan on using series elastic a ctuators in my design, which have been extensively researched over the past 20 years [3] [4] [5] [6] [7] [8] [9] 1.2 Robots as Impedances I mpedance implies a dynamic relationship between motions and forces. This relationship can be between positions, velocities, accelerations, etc, and forces displayed at the end effector of the manipulator. An example of such an impedance PAGE 15 15 would be a relationship between for ce and deviation from a nominal point in space, effectively creating a spring. Other examples of such impedances would be relationships between force and velocity or force and acceleration, effectively creating a damper or inertia respectively An impeda nce like behavior would be any behavior that, in response to a change in physical orientation, produces a force of a specified magnitude. i.e. There is evidence to support that humans display a variety of impedances when interacting with their environments, and that this is why relatively complicated dynamic tasks are possible [10] There is even evidence to suggest that tasks that require great skill are accomplished better when larger ranges of impedances are displayed by those performi ng these tasks [11] To control both the position of manipulators as well as the interaction forces between manipulators and their environments there exists two extensively published methods: hybrid position/force control and impedance control. Hybrid position/force control at tempts to separately control position and forces at the interaction interface of a robot, allowing for unstable transients upon collisions. Impedance control attempts to simultaneously control both interaction forces and positions, and by defining the rela tionship between the contact force and position, impedance control guarantees that the manipulator is able to operate in a constrained environment while achieving appropriate contact force s [12] [1] (1 1) PAGE 16 16 Theory provided by Neville Hogan, research on human manipulation, and robotic literature all point towards impedance based manipulation as a preferred means for robots to interact with unknown environments in a stable manner. 1.3 Stiff Robotic Platforms In the past, manipulation performance was determined by how accurately a robotic platform could follow desired positional trajectories. In order to deviate less and less from a desired trajectory, robots w ere designed to have stiffer links and motors. The increase in stiffness allowed for minimal deflection, or deviation from the desired trajectory, under any loading conditions and at any acceleration. S tiff robots perform pick and place operations very wel l in well defined environments. However, should a stiff robot come in to contact with its environment, the collision would be damaging The additional reinforcement s added to links to stiffen them add mass. These massive links traveling at a moderate speed translate into large amounts of kinetic energy, a nd should these links collide with some unexpected feature of the environment, this kinetic energy would be transferred into the environment. Such an energy transfer would be terrible if the environment included brittle materials like glass or even worse, people. This problem is exacerbated if you take into account the stiff motors these links are attached to within stiff actuators. Usually electric motors are connected in series with gear trains in manipulators. This is to take the high speed low torqu e properties inherent in electric motors and produce a more usable lower speed higher torque output The problem with this gearing is that in addition to torque, inertia is also magnified by the gear train. So when a collision occurs in a link, the iner tia felt by the environment is the link inertia plus the motor rotor inertia multiplied by the gearing ratio of the gear train. All this inertia makes PAGE 17 17 collisions with stiff actuators more dangerous and limits the tasks and environments for which stiff act uators are well suited 1.3.1 Rotating Link E xample Observe the following example to visualize the effects of reflect ed inertia in a rotating link. The kinetic energy associated with a rod of inertia 5 rotating at 5 is: (1 2) The kinetic energy associated with a rod of inertia 5 rotating at 5 with the inertia of the rotor, say 0.0005 and gearing ratio 100:1, factored in is: (1 3) By factoring the inertia and gearing ratio of a rotor attached to an actuated link one observes a 100% increase in kinetic energy associated with the system. Another way to vie w this increase in kinetic energy is to consider an equivalent increase in kinetic energy due to an increase in angular velocity of the link. To reach this 100% increase in kinetic energy, the link would have to be traveling or 41% faster than its c urrent speed of 5 to account for the increase in kinetic energy associated with this inclusion of link inertia in calculations. 1.3.2 Stiff Actuators in Torque M ode Despite the shortcomings of stiff manipulators, there has been much r esearch using stiff actuators for position and force critical manipulation, like impedance control [2] [13] It is possible to run a manipulator in torque mode and feed forward for joint friction and gravitational effects of the manipulator leaving a resultant force at the end PAGE 18 18 effector. Since this is difficult to do in practice due to modeling uncertainties one can collocate a force sensor at the end effector of the robot to close the control loop f or end effector forces The problem with this approach is the manner in which most forces sensors work. Force sensors usually have stiff strain gauged structures within them. Wh ile under loading conditions, these structures deform and from the st r ain gau ge voltages produced, forces are calculated Simply put force sensors transpose the task of observing forces into the task of observing positions Because load cells are very stiff, to see a very specific force in a force sensor, the force sensor would ha ve to be deformed a very specific amount. If we take such a force sensor and place it between a robot and a rigid environment and command the robot to apply a specific force, we are asking the robot to move to a very specific position in space. If the robo t is incapable of achieving such positional accuracies, and oscillates around the desired position in space, then the force sensor will oscillate around the des sensor environment with hardware, like padding, or with software by increasing the dampening components of your controller. Either approach reduces the performance of the system by introducing extra mass and complexity physically, or slowing down the robot [13] 1.4 Soft Robotic Platforms If links of a robot are allowed to be soft, then they can be designed to be very light and require much less of the available output of the ir actuators to move However, it is necessary to know when, where and how each link flexes for good robot performance. It is possible to predict this flexing, but difficult to directly measure this with high accuracy. In addition, when links of a robot are flexible then the speed at which the links can be moved is limited by the bending wave propagation speed along PAGE 19 19 the link and this wave propagation speed decreases wi th link stiffness [14] Thus, for terests to keep the links stiff. S oft actuators permit a compliant robot/environment interface and make easier the task of accurately measuring torques produced by the actuator As described earlier, in order to get a specific force transmitted through a f orce sensor, one needs to deform the force sensor a very specific amount. By introducing a soft component to the actuator, one decreases the stiffness of the robot /force sensor system, and the amount that the robot / force sensor system needs to move can be less specific. This is because as the force sensor deforms, so too does the soft component of the actuator. As a result the specificity of the desired position of the actuator before the soft component of the actuator is relaxed. A drawback of soft actuat ors is that soft actuators will always be slower than fast power train, will act as a low pass filter. This low pass filer will limit bandwidth of the actuator and thu s limit the speeds at which the actuator can operate. These points are true for all soft actuators. One design of a soft actuator that has been studied for almost 20 years is the Series Elastic A ctuator (SEA) Series elastic actuators use elastic elements placed in series with the actuator and the robot link 1.5 The Series Elastic Actuator The first published example of a SEA ap tiffness [3] In this groundbreaking article, Pratt describe d the motivation for such actuators and the strengths and weaknesses found via theoretical analysis and subsequent testing on a small scale electromechanical revolute PAGE 20 20 SEA. Analysis rev ealed that the ad dition of the elasticity to the actuator low pass filtered the actuator from the output of the SEA. This reduced bandwidth of the actuator, but also filtered any shock transmitted from the environ ment to the actuator of the SEA in a collision. In addition, the in clusion of the elastic element in an SEA transposed the notoriously unstable problem of force tracking to an easier and more stable position control problem. Figure 1 1 Block diagram of Series Elastic Actuator taken from [3] Matthew M. Williamson thesis on the same topic in [4] In this thesis, Williamson investigates the theoretical models and control issues of a SE A. Requiring particular effort in the design process for Williamson was the design of the elastic element. Creating an elastic element that could withstand the maximum force of the actuator, while still remaining soft enough for good force sensing was chal lenging David William Robinson, a further developed the methodology of elastic element assessment and selection in his dissertation titled [5] Robinson found that the stiffer the elastic element within an SEA, the greater the bandwidth of the actuator, and the softer the elastic element within an SEA, the more PAGE 21 21 accurate the actuator can be in force control. Thus int roducing the fundamental tradeoff in SEA design, that of bandwidth vs. force f idelity. One approach researchers have used to try to get around this tradeoff of bandwidth and force fidelity is to design composite actuators that combine multiple actuators of different output characteristics that cooperate to output forces and fidelities at bandwidths othe rwise not achievable by only one actuator. One such example of a composite actuator is the Distributed Macro Mini or system outlined in A New Actuation Concept for Human Friendl y Robot Design: Playing it Safe [6] In th e actuator, a small direct drive servo motor is paired with a conventional series elastic actuator. Actuation tasks that are low bandwidth are handled by the SEA and actuation tasks that are higher bandwidth are handled by the small direct drive moto r of the The authors found that the was able to provide lower output impedances and displayed a higher bandwidth than would be achievable with only the SEA. and prec ision of a typical SEA was described in Differential Actuator for [15] The Variable Impedance Differential Actuator was designed with two identical motors connecte d to a common output shaft. One motor was a SEA that regulated the impedance of the output shaft. The second motor possessed no elastic element and regulated the position of the output shaft. Authors reported that simulations of their variable impedance d ifferential actuator showed effective impedance and position tracking to a relatively high bandwidth (35Hz) for the given SEA elastic element stiffness (200 Nm). PAGE 22 22 The drawback of these composite actuators is the complexity of using multiple actuators at a single degree of freedom. For many applications, actuating one degree of freedom with multiple servo motors would be impossible from a packaging perspective, and greatly complicate the task of contr olling the degree of freedom. In an effort to get around t his fundamental design tradeoff of bandwidth and force fidelity without the additional complexity of multiple actuators per degree of freedom, nonlinear stiffness profiles. W ith a nonlinear elastic element, as the elastic element deforms the element stiffness changes, resulting in an elastic element with both soft and stiff operation regimes The idea with nonlinear elastic elements is that for high force bandwidth one can operate the actuator in the stiffer elastic element regime, and for high force output fidelity one can operate the actuator in the softer elastic element regime. T wo examples for nonlinear elastic elements were proposed i Elasti c Actuators for Passively Controlling Robotic Joint Compliance [16] Both designs used linear tension springs that were connected to wheels or surfaces that could in theory be designed to produce an elastic element that would d isplay any force length relationship provided the relationship is continuous and that the force and length profiles are positive and bounded. Though novel, the designs proposed in this paper did not seem feasible for most SEA applications with packaging co nstraints. Another example of a nonlinear elastic element within an SEA was proposed in [9] The HypoSEA as PAGE 23 23 the paper described it was an SEA with a nonlinear el astic element using a linear tension spring within a hypocycloid mechanism to achieve the nonlinear stiffness profile Figure 1 2. Hypocycloid mechanism from the HypoSEA with the tension spring being stretched by distance d [9] One commo n problem seen with nonlinear elastic elements is the difficulty involved in their design [4] [17] [8] [9] Adding a nonlinear stiffness profile to an elastic element that needs to handle peak actuator forces and be compact enough for practical use is no easy task. So while nonlinear elastic elements sound great in practic e, they hav e not been developed for general use. A, has opted to abandon the additional elastic element usually placed in series with th eir traditional actuator, and instead use the elasticity already found within their traditional actuator [7] DLR used a brushless PAGE 24 24 servo motor and connected this motor to a harmonic drive transmission to gear down the high speed low torque motor to a more suitable low speed high torque output. Harmonic drives are a common choice for actuator transmissions in high end applications because they possess zero backlash and provide a large gearing reduction in a small package. Harmonic drives are also somewhat flexible and behave as torsional springs in operation DLR exploited this i ntrinsic elasticity. Weight Robot, the flexible circular spline of their harmonic drives was outfitted with strain gauges to measure the st rain and thus the load being applied across the harmonic drive [7] Because the harmonic drive is relatively stiff in terms of SEA elastic elements, the use of the harmonic drive allowed for a high actuator bandwidth and kept th the stiffer elastic element decreases the performance of the robot in force tracking mode, as well as limits the amount of shock that would be attenuated in the event of a collision. e of strain gauges to sense torque within the actuator. Strain gauges can be affected by large magnetic fields, like the ones found within electric motors. These magnetic fields induce additional noise withi n the strain gauges data output [4] This results in a low signal to noise ratio, and thus requires filtering before strain gauge data can be accurately used. This introduces lag into the control scheme of the actuator and reduces bandwidth. Another issue with using the stiffness of the harmonic drive as the elastic element of an SEA is the inability to alter this stiffness to better suit a particular task. If for a given task one desires to track forces better and sacrifice positional accuracy, one PAGE 25 25 cannot do so by changing the elasticity of the actuator. One has to accomplish this goal by modifying the control law of the actuator, which has a limited range of effect If, for example the approximate stiffness of the harmonic drive of a DLR actuator is and it is desired to command an arbitrary torque with an allowable error of The harmonic drive would have to be deformed to within of the required deformation. Taking into account the gearing ratio of the harmonic drive, commonly 100:1, this would require a motor shaft motion error of This motor shaft motion error would require at a minimum bit encoder to observe, and very fine motor position control to display. A decrease in stiffness of the power train would have a n inverse relationship with the allowable motor shaft position error, i.e. if the stiff ness of the power train after the motor was reduced by a factor of 10 to the allowable motor shaft motion error would be increased by a factor of 10 to However, by using only the harmonic drive as the source of complian ce in a series elastic actuator, you lose the ability to modify this gear train stiffness. This sums up the various designs of series elastic actuators that have been explored in literature, as well as the characteristics and tradeoffs of Series Elastic A ctuators. Series Elastic Actuators, by their design, are capable of directly sensing both position and torque to be regulated, like impedance controlled tasks. PAGE 26 26 1.6 Robot D esign for Desired End E ffector I mpedance It has been argued that to best achieve a desired end effector impedance using a serial link manipulator, one should design the manipulator to have stiff links and flexible actuators, like series elastic actu ators. With the general configuration of the links and actuators established, it is time to begin the task of detailing the design of a robot to reach a target end effector impedance. The impedance of a robot can be thought of as a combination of the robo t hardware and the robot controller working together to approximate some target impedance. The controller of the robot takes in sensor data from the robot and commands appropriate torques to each actuator of the robot in order to drive the robot towards s ome desired impedance. However, the bandwidth of each actuator is finite, and thus the amount that the controller can change the behavior of the robot is finite. The robot itself possesses intrinsic properties such as stiffness, friction, and inertia that remain unchanged as the robot interacts with its environment. So in practice a robot possesses some nominal impedance based on physical characteristics, and the controller exists to modify the nominal impedance to best approximate desired characteristics Many papers have been written about the design of impedance controllers. However, the controller is only part of the story when speaking of impedance control. One must also consider the physical design of the robot and how this design affects the nominal i mpedance of the robot. From what I have seen, no one has answered the question of how to optimally design robots to reach a specific impedance. Thus, this is the aim of my work, to come up with a method for dete rmining the design of a robot that best achie ve s a desired impedance for some given task. PAGE 27 27 In order to figure out how to optimally design a serial link manipulator with stiff I plan on developing a model of a hypothetical rigid link SEA joint actuator. I plan to subject the model to disturbances and examine the end effector impedance via simulation. I then hope to fit this simulation within an optimization scheme that will alter the manipulator geometric parameters and SEA stiffnesses and study how a desired end effector impedance can be obtained To start constructing this model of a serial link manipulator using series elastic actuators, I will start with a model of a SEA. To populate this model with parameters, I will build and test actual SEA hardware and fit my mode l to the acquired data. With a model for a SEA developed I will build and characterize to a two degree of freedom (DOF) serial link manipulator. I will develop a model for this two DOF manipulator, and use an optimization scheme to calibrate the model to hardware using experimental data I will then compare simulated performance to actual performance to prove the model provides a valid framework for design of a 6 DOF serial link manipulator with 6 SEA s I will then extend this model of a two degree of fre edom manipulator to a general 6 degree of freedom manipulator. I will use the same optimization scheme to figure out the best possible geometric parameters and SEA design for each link so as to hit some target end effector impedance. This final 6 degree of freedom algorithm will address the motivating question and complete the dissertation PAGE 28 28 CHAPTER 2 DESIGN AND TESTING OF A SERIES ELASTIC ACTUATOR 2.1 SEA Design The design of the Series Elastic Actuator was informed by the following desi gn goals : 1) accommodate multiple elastic elements, 2) utilize a harmonic drive 3) minimize size, 4 ) maximize output shaft peak speed and torque, and 5 ) have an infinite output shaft rotational range of motion 2.1.1 SEA Design 1 Figure 2 1 Solidworks rendering of SEA design one (photo c o urtesy of author) Figure 2 2 Solidworks rendering of SEA design 1 cross sectional view (photo c o urtesy of author) PAGE 29 29 D esign 1 uses an off the shelf combination BLDC (BrushLess Direct Current) motor, motor encoder, harmonic drive, output encoder, and motor brake, depicted in blue. Attached to this assembly was the elastic element, in orange, and the output encoder in green. Design 1 was abandoned because the overall size of the actuator was unacceptable for a practic al serial link manipulator 2.1.2 SEA D esign 2 Figure 2 3 Solidworks rendering of SEA design 2 (photo c o urtesy of author) Figure 2 4 Solidworks rendering of SEA design 2 cross sectional view (photo c o urtesy of author) PAGE 30 30 In an effort to reduce the overall size of the SEA, Design 2 utilized a BLDC motor kit, a harmonic drive component set, a smaller elastic element and small Netzer absolute encoders with through hole construction. However, the assembly did not properly use bearings to constrain the output of the harmonic drive and the output of the elastic element, so the design was abandoned. 2.1.3 SEA Design 3 Figure 2 5 Solidworks rendering of SEA design 3 (photo c o urtesy of author) Figure 2 6 Solidworks rendering of SEA design 3 cross sectional view (photo c o urtesy of author) PAGE 31 31 Design 3 used double row angular contact bearings, depicted by the maroon rectangles, to constrain the output of the harmonic drive and the output of the elas tic element. However, between many parts of the assembly no features were included to concentrically constrain components relative to one another, so the design was abandoned. 2.1.4 SEA Design 4 Figure 2 7 Solidworks rendering of SEA design 4 (photo c o urtesy of author) Figure 2 8 Solidworks rendering of SEA design 4 cross sectional view (photo c o urtesy of author) PAGE 32 32 Design 4 used complementary lip like features to concentrically locate components with respect to one another. However, a fatal flaw in t his and many previous design generations was the lack of motor encoder used for commutation. It was thought that the motor encoder used before the elastic element could be used for commutation, but the communication speed of this encoder, about 4 KHz, was far too slow to be used for commutation. Thus, the design was abandoned 2.1.5 SEA Design 5 Figure 2 9 S olidworks rendering of SEA design 5 (photo c o urtesy of author) Figure 2 10 Solidworks rendering of SEA design 5 cross sectional view (photo c o urtesy of author) PAGE 33 33 Design 5 was settled upon for an SEA. A motor encoder designed for motor commutation was incorporated into the design. To further reduce the size of the SEA, Kaydon four point angular contact bearings, (K02508XP0, Kaydon Corporation Inc.), replaced the double row angular contact bearings, and the elastic element of the SEA was designed to be o ne piece, instead of multiple pieces. The design uses a fameless motor kit (K044050EY1XXX, Parker Hannifin Corporation) capable of 0.21 Nm continuous and 0.66 Nm peak. Connected to this motor is a harmonic drive component set (CSD 14 100 2A R, Harmonic D rive LLC), with a gearing ratio of 100:1, a peak repeatable torque of 19 Nm and a maximum momentary torque of 31 Nm. An optical commutation encoder with 5,000 pulses per revolution was used for motor commutation (EC35, US Digital) A bsolute single turn en coder s were placed before and after the elastic element to observe deformation of the elastic element (DS 58[20], Netzer Precision Motion Sensors Ltd.) T wo 12mmx21mmx5mm machine tool angular contact bearings placed in a duplex back to back (DB) were used to locate the motor shaft (Boca Bearings part number HCB7801C/T/P4S) To power the SEA and perform closed loop current control of the SEA a digital servo drive with used (XEL 230 18, Copley Controls) A National Instruments CompactRIO real time target was chosen to control the servo drive and SEA More information on the cRIO and the communications architecture of the SEA will be covered in section 2.3. 2.2 Elastic Element Design E lastic elements of different stiffness e s wer e designed for SEA experimen tation. O ne elastic element was designed to be as s oft as possible; another elastic ele ment PAGE 34 34 was designed to be as stiff as possible. These elastic elements bound the range of possible stiffnesses for the SEA. Because the stiffness of the elastic element wi thin an SEA a ffects the dynamics of the SEA, these bounds for SEA stiffnesses also bound the achievable performance for the SEA. 2.2.1 Soft Elastic Element Design The goal of the soft or compliant elastic element is to be as compliant as possible while st ill being able to withstand the 19 Nm of repeatable torque of the actuator without experiencing any plastic deformation and fitting within the space allotted to the elastic element. Inspiration for the soft elastic element was gathered from [8] and [17] Figure 2 11 Robonaut SEA torsional springs [8] Figure 2 12 A novel compact torsional spring for Series Elastic Actuators [17]. PAGE 35 35 In both elastic elements shown above there are curved structues used to absorb strain energy between the inner and outer structures of the elastic element via elastic material deformation. Depending on the geometry of the curves used within these elastic e lements, the elemens can be designed to have one of a variety of stiffnesses. It was these curves which insired the design of the elastic element shown below. Figure 2 13 Solidworks rendering of soft elastic element. (photo c o urtesy of author) The elast ic element resembles the springs found in [8] and [17] combined into one spring. This was done because the springs from [8] and [17] are designe d to accept torque through an inner bolt pattern and transmit torque through an outer bolt pattern. For my SEA design, torque transmitted through the elastic element needed to go through the same in plane bolt pattern axial ly space d to provide mechanical c learance between input and output bolt patterns. Thus, it was decided to create an elastic element that resembled two of the above elastic elements machined together as one elastic element. One of the halves would accept torque through an inner bolt pattern, and transmit this torque through an outer structure to another hal f of the elastic element. PAGE 36 36 This second half of the elastic element would accept this torque through these outer structures and transmit this torque through an inner bolt pattern and out of the elastic element. By placing two springs in series with one ano ther the stiffness of the net spring is given below ( 2 1 ) The spring stiffness for the total elastic element is reduced by a factor of two when compared to the stiffness of only one half of the elastic element. 2.2.2 Stiff Elastic Element Design Figure 2 14 Solidworks rendering of stiff elastic element. (photo c o urtesy of author) The second elastic element was designed to be as stiff as possible while fitting within the same volume and matching the inertia of the first elastic element. This goal was achieved by maximizing the cross sectional area and moment of inertia about the PAGE 37 37 cen tral axis, and therefore the stiffness of the elastic element. In addition, in order to selected i.e. 300 series stainless steel. The space allotted to the elastic element with the SEA design is rather specific, with 17.80 mm axial and 34 mm radial space available. The radius of the disk was selected to be 22.7 mm, matching the rotational inertia to within 1% of the first elastic element. Below is a CAD model of the elastic element. 2.3 Communications Architecture The communications architecture for the SEA, like the design for the SEA, went through design revisions before a final architecture was settled upon. The three generations of the communication and control architectu re for the SEA is depicted below. 2.3 .1 Communications Architecture Design 1 Figure 2 15 Communications architecture one for the SEA. (photo c o urtesy of author) PAGE 38 38 For all design architectures, the Compact Rio sits executes the control law for the SEA. The original design architecture called for all communications between the cRIO and the servo drive to be handled via EtherCAT communication protocol. It turns out tha t in order to use the built in EtherCAT commands to direct the servo drive how to operate, cRIO had to function at a relatively slow loop times, yielding unsmooth trajectories and poor performance from the SEA. This performance was deemed insufficient for the later testing and characterization to be conducted on the SEA. To address these performance issues, the communications architecture was updated. 2.3 .2 Communications Architecture Design 2 Figure 2 16 Communication architecture two for the SEA. (pho to c o urtesy of author) The second communications architecture two saw the incorporation of an analog output module into the cRIO chasis. An analog signal was used to command the servo drive to bypass the software limitations associated with using the built in EtherCAT servo drive software. Servo commands from the cRIO are now sent via the National PAGE 39 39 Instruments 9263 16 bit analog, 100Ks/S output module. This greatly smoothed trajectories observed from the SEA. Information such as the motor shaft position, velo city, and motor current are still sent from the servo drive to the cRIO via the same EtherCAT connection. However, it was discovered that the RS 422 serial communications signals from the Netzer elastic element encoders could not be handled by the intended 4 Port, RS 485/RS 422 serial interface module (NI 9871) originally used within the cRIO. The NI 9871 RS 422 compatible module was designed to offer the user byte control, and not individual bit control, making implementing the required SSI communication p rotocol impossible. The communications architecture was redesigned to successfully interface with the Netzer encoders. 2.3 .3 Communications Architecture Design 3 The communications architecture now uses a different digital I/O cRIO module and integrated ci rcuits to communicate with the Netzer encoders within the SEA. Information from the Netzer encoders, sent via SSI communication protocol, is now transduced from a differential signal to a single ended signal via Maxim 3095 RS 485 transceiver integrated cir cuit, and read into the cRIO via National Instruments 9402 55 ns high speed digital I/O module. Clock information required for the SSI protocol is sent from the cRIO via the same National Instruments 9402 high speed digital I/O module, and transceived from a single ended signal to a differential signal via an Analog Devices ADM4168E integrated circuit. With these modifications, the required communication between components for successful SEA operation was achieved. PAGE 40 40 Figure 2 17 Communication architecture 3 for the SEA. (photo c o urtesy of author) 2.4 SEA Model For my model of a SEA, I broke up the actuator into three subcomponents. These components are the motor shaft, the output shaft of the harmonic drive, and the output of the actuator. The motor shaft and output shaft of the harmonic drive are coupled to one another via the harmonic driv e. The output shaft of the harmonic drive and output shaft of the actuator are coupled via the elastic element of the SEA. The positions of each one of these three sub components can vary with time, so for the system of differential equations that govern t he behavior of this SEA, I will need three differential equations. One ODE will describe the motion of the motor shaft. One ODE will describe the motion of the output shaft of the harmonic drive. One ODE will describe the motion of the output shaft of the SEA. 2.4.1 BLDC MODEL To begin the SEA model derivation we st art with a model for a generic BrushLess DC (BLDC) motor whose stator is wound in a Wye configuration. There exist many models PAGE 41 41 for brushless dc servo motors e.g. [18] [19] Most BLDC motor models derived result in a transfer function from supplied voltage to output velocity. However in this model a time domain model was derived with motor current as a model input. The model for the BLDC motor is presented in Newtonian form. (2 2) (2 3) Where is the motor torque constant, is the input current to the motor, repre sents the motor shaft friction torque, represents the torques contributed to the motor shaft from the harmonic drive, is the motor inertia, and represents the second derivative of the motor shaft angle. The friction torque at the motor shaft, was comprised of viscous, C oulomb and S tribeck components expressed in the following continuously differentiable form from Makkar et al. [20] (2 4) Where through represent the coefficients of the friction model created by Makkar et al. [20] 2.4.2 HD Output Shaft Model The equation of motion for the output shaft of the harmonic drive is a s follows: (2 5) Where represents the friction torque associated with the output shaft of the harmonic drive, represents the torque associated with the elastic element, PAGE 42 42 represents the inertia of the output shaft, and represents the second derivative of the harmonic drive shaft angle. The friction torque at the harmonic drive output shaft, was comprised of viscous, Coulomb, and S tribeck components, expressed as before (2 6) Where through represent the coefficients of the friction model created by Makkar et al. [20] 2.4.3 Output Shaft Model The equation of motion for the output shaft of the SEA is as follows: (2 7) Where represents t he friction torque associated with the output shaft of the SEA, represents the torque inputted to the SEA from the external environment, represents the inertia of the output shaft, and represents the second derivative of the output shaft angle. The friction torque at the output shaft, was comprised of viscous, Coulomb, and S tribeck components, expressed as before: (2 8) Where through represent the coefficients of the friction model created by Makkar et al. [20] PAGE 43 43 2.4.4 Harmonic Drive Model The harmonic drive of the actuator is treated as being physically equivalent to a spring and damper connected in parallel. Displacement across this spring was defined as: (2 9) Where is the reduction ratio for the harmonic drive, which is 100 in our case. The equation for torque contributed to the SEA by the harmonic drive is as follows. (2 10) Where is the s pring constant for the harmonic drive, is the damping constant for the harmonic drive, and is a constant used to modify the damping characteristics of the model fit to the harmonic drive. Clearly, for a linear model would be set to 1, but in [21] authors found that setting to 0.5 greatly improved modeling accuracy of a harmonic drive. Both values for was explored when fitting models to the data to be collected. 2.4.5 Elastic Element Model Displacement across the elastic element was defined as follows. (2 11) The equation for torque contributed to the SEA by the harmonic drive is as follows. (2 12) Where and are the spring constant and damping coefficient for the elastic element, respectively This model chosen for the elastic element assumes the PAGE 44 44 elastic element is somewhat linear. Should this assumption of linearity be inaccurate, higher order models can be adopted. 2.4.6 Total SEA Model Combining these SEA component equations, the total model for the SEA becomes. (2 13) (2 14) (2 15) 2.5 SEA Characterization SEA characterization consisted of a variety of static and dynamic tests conducted to isolate various components of the SEA for analysis and model fitting. 2.5.1 SEA STATIC TESTING For SEA static testing, a JR3 6 component loadcell (JR3 Inc. Woodland, CA) was fixed to ground, and the output shaft of the SEA and used to collect output torque PAGE 45 45 information as the motor shaft was co mmanded to follow a sine wave pattern of varying amplitudes and a frequency of 0.25 Hz. Data from these experiments was used to calculate the stiffness and damping properties of the stiff and soft elastic elements as well as the harmonic drive Figure 2 18 SEA static testing experimental setup (photo c o urtesy of author) To fit stiffness and damp ing coefficients to each elastic element as well as the harmonic drive, the above dynamics w ere simplified, with acceleration and friction being set to zero, y ield ing E quation s 2 16 and 2 17. For static testing, main concern was characterizing the stiffness and damping properties of each elastic element and the harmonic drive. During static testing with the soft elastic element, maximum accelerations seen at eac h shaft were measured to be 41.91 0.0813 and 0.0395 Maximum accelerations seen at each shaft were measured to be 47.07 0.4314 PAGE 46 46 and 0.0133 during the static testing with the stiff elastic eleme nt. These accelerations at the motor shaft may seem high, but with a motor shaft inertia of 7.090 these maximum acceleration observed still only manifests as 3.34 Nm and 3.34 Nm before and after the harmonic drive, respectively. Such l ow torque values were deemed negligible for the system, and for static testing, accelerations were omitted from analysis. (2 16) (2 17) Static testing data for was used to characterize each elastic element, and data from b o th elements was used to characterize the harmonic drive. F or each equation, the left hand side was moved to the right hand side, and for each data point colle cted in static testing, the above equation was evaluated. The sum of all these equations, which under optimal conditions evaluates to zero, was used as the cost functional for the MATLAB local optimizer fmincon to evaluate and solve. The values determined from this optimization are depicted in T able 2 1. and Table 2 2 Table 2 1 Elastic element properties Elastic Element Stiff ness coefficient Damping Coefficient RMS model error Stiff elastic element 1 426 0 421 .1 1.53 3 Soft elastic element 5 4 7.0 3.929 0.374 To check the accuracy of these values, they were used in Equations 2 16, 2 17, and 2.18 to generate the predicted torque across the harmonic drive and elastic elements. T he predicted torques, as well as the measured torques, are included below. PAGE 47 47 Figure 2 19 Stiff EE measured and modelled torque s (photo c o urtesy of author) Figure 2 20 Soft EE measured and modeled torque s (photo c o urtesy of author) PAGE 48 48 Figure 2 21 HD measured and modeled torque for = 1 (photo c o urtesy of author) Figure 2 22 . (photo c o urtesy of author) Analysis of alpha values of 1 and 0.5 yielded RMS errors of 3.9320 Nm and 3.5586 Nm respectively. With lower RMS model errors associated with alpha equ al to PAGE 49 49 0.5, it stands to follow that one would chose this model for the final harmonic drive model. However, the discontinuities associated with this harmonic drive model w ould likely present problems to numerical methods that are designed for smooth contin uous systems as is the case for the optimization package GPOPS II, which will be explored more in Chapters 3, 4, and 5 of this dissertation For this reason, the linear damping SEA model was selected. Table 2 2 Harmonic Drive Models Harmonic Drive model Stiff ness coefficient Damping Coefficient RMS model error Linear Damping 996. 3 41 2.0 3.932 Nonlinear Damping 946. 6 58.0 1 3.55 9 The model fit in both stiff and soft elastic elements appears to be better than either fit found for the harmonic drive. This is as expected, becaus e the torque observed by the JR3 load cell is more similar to the torque experienced by the elastic elements than it is to the torque experienced by the harmonic drive. This has to do with the neglec ted friction across the output shaft and harmonic drive shaft bearings being greater than the friction of just the output shaft bearing. The values obtained for stiffness and damping coefficients will serve as the stiffness and damping coefficients throug hout SEA modelling, and was used within the model fitting procedure for friction within the SEA. 2.5.2 SEA DYNAMIC TESTING Dynamic testing was conducted when the SEA is connected to payloads of known inertia, and commanded to follow sine wave trajectories of varying amplitudes and information from each encoder is collected. PAGE 50 50 Figure 2 23 Vertical SEA testing setup (photo c o urtesy of author) 2.5.3 Determining Higher Order SEA I nformation To populate the dynamics described earlier for model fitting, posit ions, velocities, and accelerations are needed for all three shafts of the SEA. The motor position and velocity are collected by the power supply, and sent to the cRIO via EtherCAT. The harmonic drive and output encoders collect only positional information over time, so derivatives of the harmonic drive encoder data and output encoder data are required for velocity analysis. In addition, derivatives of all velocities need to be calculated for acceleration analysis. Due to the intrinsic noise associated with data collected from each encoder in the SEA, filtering was carried out on all velocities and then again on all accelerations after they were calculated. PAGE 51 51 Figure 2 24 SEA power spectral densities (photo c o urtesy of author) Fast Fourier analysis seems t o show signal content of sinusoids of 0.25 Hz and below. Thus, to clean up calculated derivatives of positions and velocities, a low pass function, with the passband frequency stopband frequ ency, passband ripple, and stopband attenuation set to 2 Hz, 2 0Hz, 0.1dB, and 10 0dB respectively Once the filter was designed, it was applied to the calculated velocities and accelerations and those values were then incorporated into the dynamic model f itting optimization. 2.5.5 Shaft Inertia Calculation s Inertia for the motor shaft, HD shaft, and output shaft of the actuator were found via S olidworks analysis. Components associated with each shaft inertia were assembled and analyzed for inertial prop erties based on component shape and material density. Renderings of each shaft are included below. PAGE 52 52 A B C Figure 2 25 Solidworks cross sectional models of the A) motor shaft, B) HD shaft, and C) output shaft used for inertia analysis (photos c o urtesy of author) Figure 2 26 SolidW orks model of SEA housing for inertia analysis (photo c o urtesy of author) PAGE 53 53 The rotational inertias for the motor shaft, the HD shaft, and the output shaft, as taken about the axis of rotation in the SEA, are , and respectively. Matrix representations of inertia tensors for the three SEA shafts, as well as the SEA housing, are included in Appendix A 2.5.6 SEA Model F itting The goal of SEA cha racterization is to create a set of differential equations that takes as an input the current supplied to the motor, and produces as outputs the motions of the motor shaft, the HD shaft, and the output shaft of the SEA. Using E quations 2 13, 2 14, 2 15, an d substituting values found for harmonic drive and elastic element stiffness and damping, and I arrive at the cost function us ed to fit friction parameters within the SEA model. Friction para meter fitting performed within M atlab and using a particle swarm optimization, fo llowed by the local optimizer fmincon produced the following results Table 2 3 SEA friction model coefficients Friction model coefficients Motor shaft HD shaft Output shaft F1 1.0 2 e 2 2 50 e 2 8 07 e 3 F2 7. 20 e 1 5 0 0 8 1 1 F3 5.23e 2 7.20 5.80 F4 1.84e 2 1 93 e 2 1 20 e 2 F5 8.19 1 8 7 1 8 .1 F6 6.1 3 e 5 2.71e 2 2.93e 2 To assess the validity of the SEA model, simulations of this model were carried out with time histories of current collected from experimentation. The output velocities determined from simulation were compared to actual output velocities to determine an output velocity RMS error of 1.24 rad/s across all experimentation used to fit the fr iction PAGE 54 54 model. To determine the predictive abilities of the model generated, the model was simulated and compared to actual experiments, the data of which was not used in com parison are shown in figure 2 27. Figure 2 27 Friction model for each rotating SEA shaft (photo c o urtesy of author) 2.6 SEA Model Discussion It appears that the fitted model overshoots observed output velocities at low speeds, and undershoots observed v elocities at higher speeds. This behavior is likely attributed to inherent inaccuracies within the fitted harmonic drive and friction model. Much more complicated harmonic drive models have been derived that attempt to model hysteresis within a harmonic d rive [22] [23] The discontinuous components of these models would not suit the continuity requirements that the optimization package GPOPS II was designed for. However, the piecewise linear stiffness models used in PAGE 55 55 [22] and [23] hint at the intrinsic nonlinear stiffnesses in harmonic drives, and a higher order nonlinear polynomial could have b een fit to better model the stiffness component of the harmonic drive. Perhaps a more complicated friction model would better predict friction at each shaft as a function of time. A friction model that took into account loads at the output shaft of the SE A could have yielded better results. One could even consider time a varying friction model to better predict SEA behavior. However, for this study, the fitted model was found suitable. Figure 2 28 Fitted model validation with c urrent, actual output vel ocity, and modelled output velocity (photo c o urtesy of author) 2.7 SEA Design and Characterization Conclusion A design for a Series Elastic Actuator was selected. Springs for this actuator were designed. A model for this actuator was derived. For both SEA springs, static and PAGE 56 56 dynamic testing was performed, and a model was fit. The model yielded and overall RMS error of 1.24 rad/s and for robotic simulation, was deemed acceptable. PAGE 57 57 CHAPTER 3 TWO DOF PLANAR MANIPULATOR OPTIMIZATION 3.1 Introduction The goal of this project is to create impedance. The robot to be designed at the end of this dissertat ion will be 6 DOF. However, in Chapter 2 a model was developed for a 1 DOF SEA T o bridge this gap between the one DOF single SEA of C hapter 2 and the 6 DOF robot that is the goal of joint will be designed, built an d studied This chapter discusses the design method and optimization of this two DOF robot. 3.2 Defining a Set of Differential Equations for Two DOF Manipulator Actuated by In order to model a two DOF manipulator actuated by SEAs, Equations 2 13, 2 14, and 2 15, which represent a single SEA, need to be extended to represent a manipulator comprised of two SEAs and two links. Being a serial link manipulator, there will be a proximal SEA, whose outer housing is fixed to ground, and a distal SEA. Between these two SEAs will be the proximal link of the manipulator, running from the output shaft of the proximal SEA to the housing of the distal SEA, and rigidly connecting the two The second link of the manipulator will attach to the output shaft of the dist al SEA, and the free end of this link will be the end effector of the manipulator. This end effector will be a pin joint, through which the robot will be able to interact with its environment. Autolev was used t o generate the system of differential equatio ns describing the two DOF manipulator Autolev is a multibody dynamics software package that allows PAGE 58 58 the user great control in the differential equation formulation process [24] and is available for purchase at http://www.motiongenesis.com/ Autolev generated accelerations for the motor shaft, HD shaft output shaft and output shaft for both actuators These accelerations are functions of the currents applied to each m otor, the mass, center of mass locations, and inertias of each shaft, the rotational positions and velociti es of each shaft, the friction torque at each shaft, the stiffness and damping torque s between each shaft, the forces experienced at the end effector of the manipulator, and the inertias, masses and center of mass locations of each link and the distal SEA housing. It is also worth mentioning, of critical importance to these calculations were the reaction torques at each harmonic drive, as these torques are responsible for transferring torque created at distal actuators to more proximal actuators. Within each actuator, the same model parameters as found in Ch. 2 were used for inertia, stiffness damping, and friction. The masses and center of mass locat ions for each component of each SEA are included below. Table 3 1 includes the mass and center of mass locations for the motor shaft, HD shaft, Output shaft, and Outer housing of the SEA. Note that these locations are expressed in the 1,2,3 coordinate sys tem expressed in Figure 3 1, and whose origin is located along the rotational axis of the actuator, and coincident with the SEA end cap. Table 3 1 Mass and center of mass locations for SEA components Component Mass (Kg) COM, direction 1 (mm) COM, directi on 2 (mm) COM, direction 3 (mm) Motor shaft 0.07823 0.01 0.02 42.77 HD shaft 0.08920 0.01 0.01 86.55 Output shaft 0.08635 0.01 0.02 115.03 Outer housing 1.00432 0.03 0.0 69.84 PAGE 59 59 Figure 3 1 SEA Centers Of Mass and reference frame. (photo c o urtesy of author) 3.3 Two DOF Link Derivation The mass, center of mass location, and inertia for each link of the two DOF robot depend on the size, geometry and material of each link. The links to be simulated and fabricated needed to be of a design that was capable of handling the loads it would be subjected to due to gravity and end effector forces, as well as be relatively easy to machine. To accomplish this, a design was selected to be made of 6061 aluminum and of a solid rectangular cross section. 3.3.1 Proximal Link Inertia D erivation For the proximal link, surfaces and bolt patter n s were required to allow the proximal end of the link to attach to the proximal actuator output shaft and the distal end of the link to atta ch to the housing of the distal actuator. A rendering of this l ink with the necessary bolt patterns and mating surfaces, as well as an arbitrary link length, width, PAGE 60 60 and thickness, is included below. This link mass and inertia for a link of this type is ap proximated in Appendix B Figure 3 2 Rendering of the proximal link for a general two actuator robot. (photo c o urtesy of author) 3.3.2 Distal Link Inertia D erivation For the distal link, surfaces and bolt patterns were required to allow the proximal end of the link to attach to the output shaft of the distal actuator. At the distal end of this link, material was removed to accommodate an end effector bearing bolt, which make up the end effector pin joint of the robot. A rendering of this think, with the n ecessary bolt patterns and mating surfaces, as well as an arbitrary link length, width, and thickness, is included below. Figure 3 3 Rendering of the distal link for a general two actuator robot. (photo c o urtesy of author) PAGE 61 61 The link mass and inertia for a link of this type is approximated in Appendix B Combining the proximal and distal links with the models for both actuators derived earlier, differential equations of motion were derived for a general two DOF planar robot actua ted by series elastic actuators. A rendering of such a hypothetical manipulator is included below. Figure 3 4 Rendering of a general two DOF robot actuated by SEAs. Note that the proximal SEA to the right is fixed to the ground with additional hardware not discussed in analysis. (photo c o urtesy of author) With the differential equations fully developed for a two DOF manipulator actuated by SEAs, attention now turns towards describing the desired behavior for this model 3. 4 The Desired Impedance P roblem An impedance controller is an interaction controller [1] It controls the forces at the end effector of the robot during a dynamic interaction. The general description of a desired impedance control law is as follows [25] : (3 1) PAGE 62 62 Where is the desired force a t the end effector of the robot when the robot deviates from its desired position, and , and represent the desired stiffness, damping, and inertia displayed at the end effector of the robot respectively To relax the dynamic requirements of manipulators considered in this dissertation, the desired damping and inertia at the end effector of the r obot, and are assumed to be zero. Leaving the following impedance law (3 2) This control law, expressed in task space will be implemented by each motor in joint space. The standard transformation from end effector forces in task space t o torques in joint space is as follows: (3 3) And for the series elastic actuators used, the actu al torque for each motor can be approximated as: (3 4) Combining torque information from each actuator into a system of linear equations with matrices representing the stiffness and damping properties of each elastic element allows the following comparison in desired and actual torque for the entire robot (3 5) Modifying this for implementation in software the cost functional used for an degree of freedom serial link manipulator optimization is: PAGE 63 63 (3 6) 3. 5 Choosing an Optimizer An optimizing software package is needed to determine the optimal design of a T he optimizing software package must simulate two DOF planar and six DOF manipulators and selecting link parameters SEA stiffnesse s, and control over the optimal robot trajectory In simulation pre specified forces would be applied at the end effector of the robot, and the optimizing softwa re package would solve for all variable robot parameters with the goal being to drive the hypothetical robot to the desired impedance. Choosing the optimal link and actuator parameters qualifies as a nonlinear p rogramming (NLP) problem. This is because the goal is to find a set of values for variables that obey a set of constraint equations and minimize a performance criterion, with either the constraint or performance criterion as nonl inear equations [26] Choosing the optimal control for the robot qualifies unsurprisingly, as an optimal the control signals that will cause a process to satisfy the physical constraints and at the [27] Realistically, the optimization package selected needs to be able to solve for both robot parameters and control simultaneously, so the cost functional deve loped in Equation 3 6 can be assessed and minimized PAGE 64 64 There exist t wo classes of methods to solve optimal control problems [28] The first class of methods are referred to as indirect methods, where one solves for the optimal fu nction for the control and the resulting state of the system [28] Two main minimum principle, derived using variational calculus, to develop nec essary conditions for optimality [29] This results in a multiple point boundary value problem that, when solved, yields the optimal function for control and the resulting optimal states [28] The sec ond approach is to solve the Hamilton Jacobi Bellman equation [29] The Hamilton Jacobi Bellman equation, which is solved backwards in time, is a partial differential the systems cost functional [29] The solution to the Hamilton Jacobi Bellman equation can be used to find the optimal control for a given system [29] Using either indirect approach to solve optimal control problems requires one to solve notoriously difficult differential equations [28] For this reason indirect approaches will not be used. The second class of methods used to solve optimal control problems are referred to as direct methods. In direct methods, the state or control, or both, are discretized in some fashion, and the optimal control problem is transcribed into a nonlinear p rogramming (NLP) problem that can be solved using NLP optimization techniques [28] Transcribing the optimal control problem into an NLP would allow the actuator and link parameters and the control at the discretization points to be design variables that are solved for simultaneously by the same NLP solver [30] This problem structure lends itself well to the design goals of this dissertation, and narrows the search for those employing direct methods. PAGE 65 65 A popular method for transcribing an optimal control prob lem into an NLP is through pseudo spectral methods. Spectral methods use infinite sums of orthogonal basis functions to approximate polynomials, and, more importantly for our analysis, differential equations and their solutions [31] Pseudo spectral methods use finite sums of polynomials and differential algebraic equations to approximate differential equations [30] Using pseudo spectral methods, one can reduce mathematical approximation complexity by equating differential equations and their approximations at orthogonal collocation points, allowing for quadrature integration methods of these approximations for obtaining a solution [30] The combination of f ast converge nce afforded by the pseudospectral method, and the fast and accurate quadrature integration of these differential equation approximations make pseudospectral methods a great choice for numerically solving optimal control problems [30] The GPOPS II optimal control software package was selected for this research. GPOPS II uses Lege ndre Gauss pseudo spectral methods to approximate constraint equations in optimal control problems, tr ansposes these problems into a NLP, and ca lls either the IPOPT or SNOPT NLP solver to find a solutions for states and controls at the collocation points selected for the problem [32] GPOPS II is designed for use within the Matlab programming environment, and is availab le for academic, personal, and private use at http://www.gpops2.com/ 3.6 Using GPOPS II Within GPOPS II one must define the time, states controls, and free parameters for the system, as well as the differential equations and cost functional for the problem depend ing on these values. This continuous system is then discretized by GPOPS II at various values of time, which are referred to as collocation points. These collocation PAGE 66 66 p oints constitute a mesh that is used by GPOPS II to transcribe the continuous optimal control probl em into an NLP for optimization [32] At each collocation point the states state derivatives, and controls are represented as v ariables to be select ed in the optimization process, with the caveat that they be selected in such a way as to minimize errors in the transcribed differential equations and minimize the transcribed cost function for the problem. E ach free parameter repres ents a variable that is applied across all collocation points and is also selected in such a way as to minimize errors in the transcribed differential equations of motion and minimize the transcribed cost function for the problem Bounds are applied to ti me, states, controls, and free parameters to reflect real world constraints, and to limit the solution space of the problem and help the optimizer select a solution. E vent constraints on initial and final conditions and path constraints may also be used For even more flexibility GPOPS II provides the option of specifying more than one phase for a given optimal control problem. Within each phase, one can set up entirely unique d ifferential equations of motion, reflecting different aspects or configuratio ns of a system to be optimized, as well as unique bounds on time, states, and controls event constraints, and path constraints for each phase [32] 3. 7 Formulating Serial Link Design Problems for GPOPS II For a serial link mani pulator design applications, it must be able to perform as desired under a variety of conditions. Such conditions could include positioning the end effector of the robot at v arious desired positions and orientations and subjecting the end effector to loads of various magnitudes and directions Other conditions one might also consider in the assessment PAGE 67 67 of a manipulators performance include more complicated scenarios, like directing the end effector of the robot to follow various trajectories, and subjecting the end effector to loads of various magnitudes and directions along this trajectory. Without loss of generality this design analysis will consider loads applied to manipulators in static poses only. Within GPOPS II it is possible to model a single robot in a variety of poses and loading conditions by splitting up each combination of robot pose and loading condition into i ts own phase. Each phase can represent a unique experiment for a hypothetical ma nipulator where GPOPS II is asked to drive the robot to a desired impedance in the presence of a specific disturbance This allows one to simulate a single manipulator in a variety of circumstances, and combine the se behaviors into one cost functional to be minimized. Evaluating the behavior of a single robot under a variety of conditions satisfies the requirement for a serial link manipulator to be considered optimal, and it is this approach that will be employed in studying the design of the two DOF mani pulator he rest of this chapter. In Ch apter 5 this approach will be extended to study 6 DOF manipulators 3.8 I nitial Guess Generation f or GPOPS II GPOPS II requires an initial guess for states, controls, and free parameters as initial inputs for optimization [32] These values are very important as GPOPS II works as a local optimizer, and uses gradient based methods to determine solutions to optimal control problems [32] For all experiments the hypothetical manipulator is subjected to, nominal values of each free parameter must be specified and a controller must be designed and implemented to drive th e hypothetical manipulator to some desired behavior when subjected to a disturbance. For each individual experiment, the PAGE 68 68 disturbance for a given experiment must be applied to this nominal robot design and controller gains selected to produce a robot perfo rmance as close to desired as possible. 3. 9 S caling t he Optimal Control Problem for GPOPS II It is critically important to appropriately scale the optimal control problem for GPOPS II to function correctly [32] The preferred method for scaling GPOPS II variables is found in [32] and is as follows. Suppose you wish to map a variable to such that This variable scaling is accomplished via the affine transformation (3 7) Where and are the variable scale and shift, respectively, defined as (3 8) (3 9) All variables GPOPS II has direct access to are scaled in this manner to achieve the best results. These variables include time, states, controls, free parameters, state derivatives, path constraints, and event constraints. Obviously, unscaling of all GPOPS II variables should be performed when re evaluating the dynamic constraints, path constraints, event c onstraints, and cost, so as to not distort the optimal control problem. 3. 10 Design of Experiment s for GPOPS II and Physica l Validation A medical scenario for implanting pedicle screws using a robotic platform to assist a surgeon is described in [25] The platform for performing this operation was a serial link manipulator guiding a drill, with actual drilling being performed by a PAGE 69 69 surgeon. The robotic platform in this scenario used a Cartesian impedance contro ller, with 100 N/m. a stiffness value to be used in impedance control laws explored in this analysis. It is desired to model and optimize a two DOF GPOPS II this two DOF robot is to be constructed and tested under the same or similar conditions as in simulation. For ease of experimentation, disturbances were selected to be a hyperbolic tangent function used to smoothly approximate a step input of force. For the physical experiments, t his disturbance is implemented via a cable suspended mass Thi s cable run s from the mass, around a pulley, and c onnect s to the end effector of the robot. It is assumed that the cable mass and stiffness, and the friction at the pulley are negligible, and the load mass is accurately known. T he two DOF robot is oriented with both joint axes vertical so as to move the end effector of the robot in a horizontal plane. A coordinate system is attached to the ground to which the robot is fixed, with the x and y axis oriented parallel to ground, and the z axis oriented vertically up. Expressed in this reference frame is the desired and actual end effector location. The desired end effector o f the robot was chosen to be 500 mm in the x direction and 0 mm in the y direction. To fully explore the forces a two DOF robot coul d create and respond to forces oriented along the positive and negative x and y axis of the robot motion plane were applied. The magnitude of this force is given below. PAGE 70 70 (3 10) Figure 3 5. Matlab rendering of the pseudo step used in two DOF optimization. (photo c o urtesy of author) The load used as a disturbance for the system approximates a step input, and moves from 0 N to more than 95% maximum load in less than 250 milliseconds. This turn on time was selected to try to keep the disturbance force as smooth as possible so that GPOPS II could best deal with the disturbance in modelling and optimization. It is important to note that the end effector of a two DOF robot is capable of reaching a given point in the solution space via two different se ts of joint angles, provided this point is closer the base of the robo (which is a singular config uration) This an important point to address, as the joint angles selected for a manipulator dictate the orientation of a manipulator in space, and how joint torques map into end effector forces [33] This wa s taken into consid eration when selecting the disturbances to be applied to the end effector of the robot. For a tw o PAGE 71 71 DOF robot, the joint solutio ns to get the end effector of the robot to a particular point in space ar e x axis mirror images of on e another. This can be seen i n F igure 3 5 Figure 3 6 R endering s of both two DOF manipulator joint solutions that drive the end effector to the same position. (photos c o urtesy of author) With forces applied to the end effector parallel to the x and y axis only one joint angle solution set needs to be considered. Forces applied along the x axis using either joint angle solution set will create mirror ed images of the same results. T hese mirrored result s hold for both joint solution sets when forces are applied along the y axis as well 3. 11 Two DOF Free Parameter Bounds for GPOPS II To bound the values picked by GPOPS II for link len gths, the desired position of the end effector of the robot, the desired impedance of the robot, and the load applied to the robot was considered. With a desired impedance stiffness of 500N/m, a 25 N load would ideally create a deflection of the end effector. Orienting this load away from the base of the robot would mean an ideal end effector location of in the x direction, and in the y direction. To reach PAGE 72 72 this point the two link lengths of the m anipulator would have to add up to at least 550 mm Evenly dividing this minimum manipulator length yields a minimum link length of 275 mm To allow for overshoot error of the end effector when subjected to disturbances oriented in the positive x direction, a link length lower bound of 300 mm was selected. An upper bound of 500 mm was selected to limit the size of the robot and the solution space for link lengths. To bound the SEA stiffnesse s selected by GPOPS II the st iffness values found in Chapter 2 were used, with u pper and lower stiffness bounds of 14,260 and 547 respectively For nominal value s of link lengths and stiffnesse s, the mean of the bounds for each free parameter was used for gene rating initial guess manipulator trajectories for GPOPS II 3.12 Two DOF Initial Guess for GPOPS II I nitial guess es for GPOPS II o ptimizations were originally selected to minimize the cost function evaluation for each trial. This yielded results with qui ckly changing positions and velocities at the beginning of each trial, and a quick arrival at steady state. While these seemed ideal for an initial guess, as it is our desire to minimize this cos t function in real life, this does not yield a good initial g uess for GPOPS II GPOPS II works by approximat ing the solutions to optimal control problems by fitting polynomial solution s to a given problem. This process starts w i th a polynomial approximation to the initial guess. If the initial guess displays abrupt changes at certain locations, this makes the process of fitting a polynomial to this guess difficult, and hinders the effectiveness of GPOPS II Thus, it is recommended practice and followed in this dissertation, to add a PAGE 73 73 considerable amount of damping to the control s trategy to generate the initial guesses for GPOPS II This add s to the cost function evaluation for your initial guess but allow s GPOPS II to better utilize the initial g uess provided, and simplify the process for arriving at an optimal solu tion. 3.13 Two DOF GPOPS II Optimization Results Preliminary analysis in GPOPS II yielded noisy current signals selected for the optimal trajectory of the system. To try to attenuate these noisy controls, t he current for each motor was turned into a state for the system, and the derivative of current for each motor was made a control for GPOPS II to use to drive the system to the optimal trajectory. For t he four phase optimization of a two DOF planar manipulator actuated by SEAs subjected to the pseudo step disturbances and with the previously described cost functional, GPOPS II selected proximal and distal joint lengths of 364 mm and 471 mm (Figures 3 6 and 3 7) and proximal and distal SEA stiffnesses of 7409 and 547 GPOPS II arrived at this solution using a second order mesh derivative level the NLP solver IPOPT with a maximum NLP constraint violation tolerance of the linear and a final mesh error of 3.5 174e 5 with 1000 iterations per mesh and 10 mesh iterations. RMS errors for end effector force and joint torques for each phase of the optimizati on are included in T able s 3 2 and 3 3 Plots from the optimization are included in Appendix C Table 3 2 Two DOF planar robot initial guess performanc e Phase 1 Phase 2 Phase 3 Phase 4 EE force RMS error (mN) 4659.8 4344.4 3531.3 2746.3 Proximal joint torque RMS error(mN m) 321.8 307.1 1748.8 1475.7 Distal joint torque RMS error(mN m) 1318.1 1296.6 586.5 595.3 PAGE 74 74 Table 3 3 Two DOF planar robot optimization performance Phase 1 Phase 2 Phase 3 Phase 4 EE force RMS error ( m N) 15.4 12.9 135.4 24.9 Proximal joint torque RMS error( m N m) 1.8 1.9 1.4 1.1 Distal joint torque RMS error( m N m) 4.8 4.7 44.6 8.6 Because of the difficulty and time associated with designing and constructin g SEA springs of the specified stiffness, the spring stiffnesse s selected by GPOPS II were used merely as a guide for future testing. With unlimited time and funding, construction of the springs selected by GPOPS II in te sting would be preferable for GPOPS II validation. However, with two springs already fabricated for the SEA design, it was decided to use only these existing springs within two DOF planar manipulator testing. GPOPS II selected a slightly stiffer spri ng to be used within the proximal actuator and the softest possible spring to be used at the distal actuator. This motivated the decision to re run the GPOPS II optimization for a two DOF manipulator previously conduc ted, but with the SEA stiffnesse s as static values, with the proximal SEA spring set to the stiff spring already fabricated, and the distal SEA spring set to the soft spring already fabricated. This left only the link lengths of the two DOF manipulator as free parameters to be selected b y GPOPS II With the proximal and distal SEAs using the stiffer and softer prefabricated springs, GPOPS II selected proximal and distal link lengths of 465 mm and 454 mm (Figure 3 8) GPOPS II arrived at this solution using a second order mesh derivative l evel, the NLP solver IPOPT with a maximum NLP constraint violation tolerance of 5 with 1000 iterations per mesh and 10 mesh iterations. RMS errors for end effector force and joint torques f or each phase of the optimizati on are included in table 3 3 Plots from the optimization are included in Tables 3 4 and 3 5 and Appendix D. PAGE 75 75 Table 3 4 Two DOF planar manipulator initial guess performance Phase 1 Phase 2 Phase 3 Phase 4 EE force RMS error (mN) 4252.8 4243.2 4121.6 3402.8 Proximal joint torque RMS error(mN m) 568.9 759.1 2102.1 1873.2 Distal joint torque RMS error(mN m) 1107.4 1 149.5 769.7 815.3 Table 3 5 Two DOF planar robot with springs pre selected optimization performance Phase 1 Phase 2 Phase 3 Phase 4 EE force RMS error (mN) 13.3 64.3 23.0 23.4 Proximal joint torque RMS error(mN m) 0.8 4.1 11.5 12.6 Distal joint torque RMS error(mN m) 4.9 26.2 5.1 7.8 Figure 3 7 Rendering of the GPOPS II initial guess manipulator. ( photo c o urtesy of author) Figure 3 8 Rendering of the optimal manipulator selected by GPOPS II (photo c o urtesy of author) Figure 3 9 Rendering of the optimal manipulator with springs stiffnesses pre specified. (photo c o urtesy of author) PAGE 76 76 3.14 Two DOF Optimization Discussion GPOPS II demonstrates an impressive ability to drive the cost down for both versions of the planar robot in simulations. The maximum RMS force errors observed per experiment in the initial guesses generated for GPOPS II were 4.6598N for the first optimal planar robot, and 4.2528N for the planar optimal robot with springs selected. After optimization, the maximum RMS force errors observed per experiment were 0.1354 N for the first optimal planar robot, and 0.0643 N for the planar opti mal robot with springs selected. The initial guesses for spring stiffnesses for the first optimized two DOF planar robot were both 7404 The proximal SEA spring stiffness selected barely increased to 7409 This seems to indicate th at the initial guess for proximal spring stiffness was very close to the optimal value for the experiments considered. The distal SEA spring stiffness selected dropped to 547 which was the lower bound for this parameter. This seems to indicate that low spring stiffness in the distal SEA is a critical feature to achieving the desired end effector impedance for the experiments considered. The initial link length guess es for both links in both optimized two DOF planar robots was 400 mm In both o ptimizat ions, the distal link length increased to 471 mm when the spring stiffnesses were design variables and then to 454 mm when the spring s were pre specified. Perhaps this increase in distal link length more favorably mapped joint torques into end effector forces for t he manipulator. Interestingly, when spring stiffnesses were selected by the optimizer, the proximal link length went down to 364 mm, and when spring stiffnesses were pre selected, the proximal link lengths went up to 465 mm. It appears that the proximal spring stiffness and link length of the system PAGE 77 77 strongly affect one another, and as proximal spring stiffness is forced up, the proximal link length must also increase to achieve the desired end effector impedance. This increase in link l ength seems to compensate for the increase in spring stiffness, as if to provide similar link end translation for a given link end load. One interesting consequence of matching the desired impedance so accurately over each simulation is the nonzero end ef fector velocity at the end of each experiment. This is a result of GPOPS II doing everything within its power to drive down the cost functional for the problem. The end effector trajectories mimic an undamped spring oscillating in response to a step input. The desired end effector impedance has a stiffness term and no damping or inertial terms, and GPOPS II appears to have created this behavior in simulation and optimization. 3.1 5 Two DOF Optimization Conclusion A model for a two DOF planar manipulator actuated by SEAs was proposed. A method for optimizing the design of a serial link manipulator based on end effector impedance was proposed. This serial link manipulator design optimization procedure was applied to the proposed two DOF planar manipulator actuated by SEAs. Both manipulator link lengths and SEA spring stiffnesses were optimized by this procedure. This procedure was repeated wi th only link lengths optimized. In both cases, the simulation produced physic ally reasonable/realizable solutions and model behavior that is consistent the model, inputs and constraints. This work demonstrates the feasibility of using numerical optimal control design approaches for the design of multi DOF robotic manipulators with SEA joints. PAGE 78 78 CHAPTER 4 TWO DOF PLANAR MANIPULATOR TESTING 4.1 Validating the Optimizer To prove the effectiveness of GPOPS II for serial link manipulator design, the two DOF manipulator designed by GPOPS II was constructed All four end effector loading conditions optimized for in GPOPS II were explored with the physical two DOF manipulator. 4.2 Two DOF Robot D esign The two DOF robot used the same SEA design from C hapter 2 for both SEAs. The control architectures f or both SEAs were the same as described in S ection 2.3.3 with the cRIO now performing closed loop control on both SEAs. The proximal SEA contained the 14260 stiff elastic element and the distal SEA contained the 547 soft elastic element. The proximal li nk between these two SEAs spanned 465 mm from joint axis to joint axis. The distal link spanned 454 millimeters from the distal joint axis to the end effector pin joint. 4.3 Experimental Methods The 25N load applied to the end effector of the two DOF man ipulator was created via cable attached to the end effector running around a pulley and attaching to a suspended mass. Each of the four end effector loading conditions were created by changing the orientation of the cable and pulley ap paratus relative to the robot. Four different controllers were considered for each experiment. The first controller recreated the optimal current specified by GPOPS II This controller will be referred to as the model based feed forward controller (MBFF) The second controller PAGE 79 79 recreated the current specified by GPOPS II and also included a low gain PID component that fe d forward torque based on the desired joint torque, and damped output velocity This controller will be referred to as the model based feed forward plus low gain PID controller (MBFF+lo) The third controller recreated the current specified by GPOPS II and a high gain PID controller that fe d forward torque based on the desired joint torque, and damped output velocity. This controller will be referred to as the model based feed forward plus high gain PID controller (MBFF+hi). The fourth controller performed PID control on the output shaft angles of each actuator, with the desired joint angles for each actuator being taken from the optimal trajec tories generated by GPOPS II. This controller will be referred to as the trajectory tracking controller (TRACK). For all f our loading conditions and all four controllers, a total of five experiments were carried out. Each experiment conducted consisted of three phases. In the first phase, the end effector of the robot was commanded via position controller to the desired end effector location, 0.5 meters in the x direction and 0 meters in the y direction, and held this position. In the second phase, the controller was changed from holding the end effector at the desired starting position to the desired controller for the given ex periment In the third phase, the controller was then turned off, causing the suspended weig ht to drop to the ground and the end effector of the robot to move and then come to a stop at some arbitrary location greater than 300mm from the starting location During each experiment, recordings were made for angular displacements from each moving sha ft in each SEA as well as the current fed into each motor PAGE 80 80 The first phase of each experiment served purely to set up the second phase. The third phase of each experiment served to provide a measurement of the steady state torque recorded from each motor a fter testing was finished. The second phase of each experiment served to mirror what was previously explored in GPOPS II, and will be the focus of this analysis. A B C D Figure 4 1. Four loading conditions applied to the two DOF manipulator in e xperiments. A) Load in the positive x direction applied in trial 1, B) Load in the negative x direction applied in trial 2, C) Load in the positive y direction applied in trial 3, B) Load in the negative y direction applied in trial 4. (photos c o urtesy of a uthor) PAGE 81 81 4.4 Two DOF Experimental Torques GPOPS II optimized a cost functional that minimized the errors in torque of the two DOF robot subjected to torques at each SEA would be a focus of the anal ysis. However, during testing it became cl ear that torque measured in both actuator s was compromised by slippage between components. Shafts mating the elastic elements in each SEA began to fatigue under loading and move relative to each elastic element. Th is had no effect on the measured joint angle of each shaft, but significantly altered the measured torque at each SEA. The average final torque at each SEA for all end effector loading conditions a nd controllers is described in Tables 4 1 and 4 2 These nu mbers represent the torque observed at the completion of testing when the end effector load has been removed by allowing the suspended mass to drop to the ground. Some of this measured torque is attributable to stiction in the SEAs. Based on the experimen tally fitted friction model this torque should be no greater than 0.012 N m. However, e arly testing of each SEA in the two DOF manipulator indicate d that SEA torque due to stiction was closer to approximately 0.5 N m. Many final torques measured were well above 0.5 N m, so stiction alone does not fully account for all of the final torque errors observed. The remaining torque had to come from the relative motion of shafts mating e ach elastic element. Table 4 1. Measured fin al proximal torque averages MBFF (N m) MBFF+lo (N m) MBFF+hi (N m) TRACK (N m) Trial 1 8.1 7 6.50 0.9 4 1.7 8 Trial 2 39.6 3 1.73 Trial 3 6.8 5 18.4 6 27.35 10.0 8 Trial 4 66.3 3 134. 70 17.79 30.26 PAGE 82 82 Table 4 2. Measured final distal torque averages MBFF (N m) MBFF+lo (N m) MBFF+hi (N m) TRACK (N m) Trial 1 0.84 2. 80 1.0 3 13.8 5 Trial 2 12.41 9.25 Trial 3 0.36 0.17 0.1 2 14.27 Trial 4 0.3 3 3.5 5 0.9 3 9.9 8 4.5 Trial 1 Experimental Results Trial 1 experiments had the load applied to the end effector oriented in the positive x direction of the robots coordinate system ( Figure 4 1 A) Table 4 3 Trial 1 GPOPS II selected trajectory. Trial 1 O ptimal trajectory Minimum value Maximum value R ange Prox c urrent (mA) 0 52 3 523 Dist c urrent (mA) 847 1 86 2 2709 Proximal output angle (rads) 0.9788 0.5225 1.5013 Distal output angle (rads) 1.7529 1.8615 0.1086 EE x location (mm) 499 588 89 EE y location (mm) 0 10 10 Table 4 4 Trial 1 experimental results. Trial 1 MBFF MBFF+lo MBFF+hi TRACK Prox Current RMS error ( m A) 7 415 468 644 Dist current RMS error ( m A) 44 524 101 7 1 090 Prox output angle RMS error (rads) 1.2281 0.7062 0.0783 0.0069 D ist output angle RMS error (rads) 2.2758 1.3229 0.1679 0.1213 EE x RMS error (m m ) 22 9 20 5 6 3 4 EE y RMS error (m m ) 14 4 78 20 3 4.6 Trial 1 Discussion For the MBFF controller, the RMS error in proximal and distal current is quite small at 7 m A and 43 mA The maximum proximal and distal currents selected by GPOPS II were 523 mA and 1 862 mA respectively. Therefore, the discrepancy between the proximal current error and the distal current error was expected RMS j oint and end effector errors were somewhat high for the MBFF controller. The GPOPS II PAGE 83 83 selected end effector position varies only 89 mm and 10 mm in the x and y directions and t he RMS error in end effector location was 229 mm and 144 mm in the x and y directions. These end effector position errors are significant, and show the ability of the GPOPS II selected current to drive the two DOF manipulator to the desired trajectory to be poor in this case. The joint errors seem to be greatest in the distal joint at 2.2758 radians RMS, compared to the proxi mal joint RMS error of 1.2281 radians This is likely the result of the load orientation and the initial joint angles for the two DOF manipulator. End effector loads oriented in the x direction have the effect of pulling the end effector away from the base until the output joint angles are at 0 radians and the robot is fully extended. The proximal joint starts at 0.9788 radians, and the distal joint starts at 1.7529 radians. For a poorly controlled manipulator having both SEAs being pulled towards 0 radian s, it is within reason that the distal SEA could experience greater output errors, as it has more room to move before manipulator full extension. As expected, the MBFF+lo controller produced considerably larger current errors than the MBFF controller. The output angles and end effector location errors also improved with the addition of the low gain controller. The MBFF+hi controller created even greater errors in currents and improvements in end effector positions. The TRACK controller currents differed t he most from what GPOPS II selected. The proximal and distal current errors were a rather high 644 and 1 090 mA respectively These values are 123% and 40% of the range of currents selected for the each SEA. This controller also provided the most accurate tracking of GPOPS II selected trajectories. The small errors in RMS output angle errors produced end effector PAGE 84 84 RMS errors of 4mm in the x direction and 3 mm in the y direction. This is far lower than the previous three controllers (see T able 4 4) 4.7 Tri al 2 Experimental Results Trial 2 experiments had the load applied to the end effector oriented in the ne gative x direction of the robot coordinate system (Figure 4 1 B) Table 4 5 Trial 2 GPOPS II selected trajectory. Trial 2 Optimal trajectory Minimum value Maximum value Range Prox current (mA) 393 390 783 Dist current (mA) 2485 969 3454 Proximal output angle (rads) 1.0979 0.3898 1.4877 Distal output angle (rads) 1.9883 0.9687 1.0196 EE x location (mm) 401 501 100 EE y location (mm) 0 5 5 Table 4 6 Trial 2 experimental results. Trial 2 MBFF MBFF+lo MBFF+hi TRACK Prox c urrent RMS error (mA) 307 158 Dist current RMS error (mA) 1 264 1 25 8 Prox output angle RMS error (rads) 0.0937 0.0032 Dist output angle RMS error (rads) 0.1915 0.0484 EE x RMS error (mm) 76 20 EEy RMS error (mm) 7 11 4. 8 Trial 2 Discussion Unfortunately, for trial 2 experimentation it was deemed too dangerous to conduct tests for the MBFF controller and the MBFF+lo controller. Experiments were carried out for both controllers, but not to completion. During experimentation for both controllers, the proximal motor continued to hit a hard bound placed around the robot to prevent the proximal motor from moving too far and potentially damaging p ower and communications cables In addition the distal motor fought the end effector load so much, that it would overshoot perpendicularity to th e applied load and thus create a torque that pushed the end effector in the direction of the applied load Th is rapid acceleration of the end effector from both the runaway distal motor torque and end PAGE 85 85 effector load necessitated the use of the emergency stop for the two DOF planar manipulator and shut off current to both SEAs. It is interesting to note that the ma gnitude of GPOPS II selected current for the distal motor is 2485 mA This is 571 mA greater than any other current selected by GPOPS II. This current proved to be too large for safe testing being fed forward as is and too large for the small gain control ler to overcome and stabilize the robot. The MBFF+hi controller was successfully run. This controller produced low RMS output angle errors of 0.0937 radians proximally and 0.1915 radians distally, but required a difference in current from GPOPS II selected values of 307 mA proximally and a substantial 1 264 mA distally to arrive at these RMS errors in joint angles. The TRACK controller was able to drive the end effector to 20 mm x direction and 11 mm y direction RMS error. This improves upon the MBFF+hi controller at 76 mm x direction and 7 mm y direction RMS error. The TRACK controller outputted a difference in current from GPOPS II selected values of 158 mA proximally and 1258 mA distally, which is comparable to the MBFF+hi controller 4.9 Trial 3 Experimental Results Trial 3 experiments had the load applied to the end effector oriented in the positive y direction of the robot coordinate system (Figure 4 1 C) Table 4 7 Trial 3 GPOPS II selected trajectory. Trial 3 Optimal trajectory Minimum value Maximum value Range Prox current (mA) 1715 454 2168 Dist current (mA) 1638 481 2119 Proximal output angle (rads) 0.9800 0.4537 1.4337 Distal output angle (rads) 1.9900 0.4808 1.5092 EE x location (mm) 476 501 25 EE y location (mm) 70 2 72 PAGE 86 86 Table 4 8 Trial 3 experimental results. Trial 3 MBFF MBFF+lo MBFF+hi TRACK Prox Current RMS error (mA) 51 1 486 2 031 1 6 20 Dist current RMS error (mA) 38 266 71 1 710 Prox output angle RMS error (rads) 1.5395 0.5527 0.1099 0.0269 Dist output angle RMS error (rads) 1.8465 0.3911 0.1024 0.0229 EE x RMS error (mm) 388 113 39 9 EE y RMS error (mm) 42 2 23 7 49 15 4. 10 Trial 3 Discussion For the MDFF controller, the RMS error in proximal and distal current is quite small at 51 mA and 38 mA. The current ranges for the proximal and distal currents selected by GPOPS II were 2168 mA and 2119 mA, yielding percentage errors of 2.4% and 1.8%. RMS j oint and end effector errors we re quite high for the controller feeding forward the GPOPS II selected current. The GPOPS II selected end effector position varies only 25 mm and 72 mm in the x and y directions, and the RMS error in end effector location was 388 mm and 422 mm in the x and y directions. These end effector position errors are significant, and demonstrate the poor ability of the GPOPS II selected current to drive the two DOF manipulator to the desired trajectory. The joint RMS errors are similarly inaccurate at 1.5395 radians proximally and 1.8465 radians distally. The MBFF+lo controller produced considerably larger current errors, 1 486 mA and 266 mA RMS, than the MBFF controller. The output angle RMS errors also improved significantly from 1.5395 radians to 0.5527 radians proximally, and from 1.8465 radians to 0.3911 radians distally with the addition of the low gain assistive component to the controller. The MBFF+hi controller created currents that differed even more from the GPOPS II selected values at 2 031 mA p roximally and 711 mA distally RMS. This PAGE 87 87 controller also reduced end effector RMS errors to 39 mm in the x direction and 49 mm in the y direction, far lower than either previous controller. The TRACK controller created currents that diff ered from the value s GPOPS II selected by 1620 mA and 710 mA RMS. Interestingly, the controller feeding back on SEA output angles produced less RMS difference in current from GPOPS II specified values than the MBFF+hi controller, and was more accurate in tracking the desired end effector trajectory with only 9 mm x direction and 15 mm y direction RMS error. 4.11 Trial 4 Experimental Results Trial 4 experiments had the load applied to the end effector oriented in the negative y direction of the robot coordinate system (Figure 4 1 D) Table 4 9 Trial 4 GPOPS II selected trajectory. Trial 4 Optimal trajectory Minimum value Maximum value Range Prox current (mA) 454 1683 2138 Dist current (mA) 488 1914 2402 Proximal output angle (rads) 1.0843 1.6833 2.7676 Distal output angle (rads) 1.9373 1.9142 0.0231 EE x location (mm) 500 516 16 EE y location (mm) 2 69 71 Table 4 10 Trial 4 experimental results. Trial 4 MBFF MBFF+lo MBFF+hi TRACK Prox Current RMS error (mA) 141 1 30 1 1 752 1 67 7 Dist current RMS error (mA) 44 99 2 1 05 9 91 6 Prox output angle RMS error (rads) 0.5831 0.3543 0.0669 0.0277 Dist output angle RMS error (rads) 1.6824 0.0891 0.0243 0.0662 EE x RMS error (mm) 43 9 29 10 2 4 EEy RMS error (mm) 54 3 200 28 3 2 4. 12 Trial 4 Discussion T he MBFF controller produced RMS error s in proximal and distal current s of 141 mA and 44 mA. The proximal current RMS error displayed larger errors than seen in any other trial as the proximal motor tended to approach the proximal joint limits for the robot, triggering the us e of a soft limit controller. This soft limit was used in the proximal PAGE 88 88 motor to protect distal power and communications cables from being harmed by excessive rotation. This controller managed to drive the end effector to RMS errors of 439 mm in the x direc tion and 543 mm in the y direction, the largest observed for any controller. The MBFF+lo controller produced RMS errors in proximal and distal currents of 1301 mA and 992 mA. The end effector trajectory errors were reduced to 29 mm in the x direction and 200 mm in the y direction. The MBFF+hi controller produced RMS errors in proximal and distal currents of 1752 mA and 1059 mA. The end effector trajectory errors were reduced even further to 10 mm in the x direction and 28 mm in the y direction. The TRACK controller created motor currents that differed from the values GPOPS II selected by 1677 mA and 916 mA RMS. As was also observed in trial 3 the TRACK controller feeding back on SEA output angles produced less RMS difference in current from the MBFF+hi c ontroller. However, the TRACK controller displayed end effector errors of 24 mm RMS and 32 mm RMS. The end effector errors were greater than those created from the MBFF+hi GPOPS II controller, and can be attributed to the distal motor managing RMS joint e rrors of 0.0662 radians. The proximal motor displayed 0.0277 radians RMS error. 4.13 Two DOF Experimentation Discussion Across all trials, it appears that the currents selected by GPOPS II failed to recreate the desired trajectories selected by GPOPS II This likely had to do with the inaccuracies of the model fit to the SEAs. In Chapter 2 the inaccuracies of the harmonic drive model fit was discussed, and this likely contributed to the poor performance of GPOPS II selected currents. It is also likely th at the friction fitted model contributed to PAGE 89 89 these inaccuracies. Testing seemed to indicate that the friction experienced at each SEA was a function of the end effector loading conditions. It appears that as end effector loads increase, so too did friction. The fitted model did not take this into account, and this likely further contributed to inaccuracies in the model, and to the poor ability of GPOPS II to accurately select the required currents for accurate trajectory tracking [34] The MBFF+lo controller currents seemed to help the two DOF robot drive the end effector to the desired trajectory selected by GPOPS II. The TRACK controller did the best at driving the end effector to the GPOPS II selected trajectory, and did so wit h currents considerably different from those selected by GPOPS II. 4. 14 Two DOF Experimentation Conclusion The two DOF planar manipulator with SEA springs pre specified and link lengths selected by GPOPS II was built. The four experiments studied in GPOPS II were recreated with this two DOF manipulator and the results compared It was found that the mechanical couplings at the elastic elements were not sufficiently robust to transmit the required torques without slip, which led to apparent torques being in duced at the elastic element. This required the comparison between model and physical robot to be made based on displacements rather than joint torques. One obvious sequelae to the work reported here is to redesign the elastic element interfaces to transmi t higher torques. The ability of the GPOPS II optimal currents to drive the two DOF manipulator to the GPOPS II optimal trajectories was studied. In general, the predicted currents were much too low to drive the manipulator along the planned trajectories. Model inaccuracies, especially for the harmonic drive and static friction elements, likely PAGE 90 90 account for much of the discrepancy between predicted and required motor cu rrents for trajectory following. Additional feedback controllers were used with the two DOF manipulator, and showed that increasing PID gains, or simply trajectory following, provided improved trajectory following with increasing deviation from the predicted feedforward motor currents. Future work, as previously mentioned, should improve mode l fidelity for the harmonic drive and friction terms in order to improve the correspondence between model predicted and physical hardware performance. PAGE 91 91 CHAPTER 5 OPTIMAL DESIGN OF A SIX DOF SERIAL LINK MANIPULATOR ACTUATED BY SERIES ELASTIC ACTUATORS 5 .1 Introduction For this dissertation, the optimal serial link manipulator design is the design which best approximates a target impedance. I n other publications the optimal serial link manipulator design has been defined as satisfying different criterion 5 .2 Historical Optimality Conditions for the Design of a Serial Link Manipulator Lenarcic et al. [33] studied optimal serial link manipulator design to maximize achievable workspace volume. P. S. Shiakolas et al. [35] defined the optimal serial link manipulator design as the design minim iz ing total torque over a predefined trajectory J. A. Snyman et al. [36] defined the optimal design for a serial link manipulator as the design which minimizes average torque over a predefined trajectory Researchers have also included in their robot design optimality criterion sp ecific attributes of the robot J acobian m a p ping from r obotic joint space to robotic task space. R. Saravanan et al. [37] defined their optimal serial link manipulator as the manipulator which maximizes the manipulab ility index, which they define as the 2 norm, or square root of the value. T he eigen value s of a matrix represent the that matrix displays in specific orthogonal directions, or eigen vector directio ns. as the ratio between end effector force/torque and the joint torque creating this end effector force/torque. By maximizing the 2 displayed by the robot J acobian in a particular direction, and maxi mize the end effector force/torque achievable for a given amount of joint space torque in tha t direction. PAGE 92 92 A s imilar optimal criterion was published by L. Stocco et al. [38] where i sotropy was included in the cost function of t he ir robot optimization L. Stocco [38] defined i sotropy as the condition number of the robot J acobian, or the ratio of the larg est eigenvalue of the Jacobian matrix to the smallest eigen value of the Jacobian matrix. The authors w ere trying to drive all eigen values of the ro b ot J acobian to similar magnitudes and allow their ideal robot to move in any direction equally well. F. C. Park [39] propose d methods for optimizing robot design to maximize works pace volume, dexterity, and the con trol effort used to manipulate objects of known inertia just as other authors have done in previous works [33] [35] [36] [37] [38] However, instead of optimizing robotic parameters for a specific pose Park et al use d global, coordinate fr ee methods of differential geometry to characterize robot performance. F. C. Park [39] treat s the joint space and task space of the robot as differentiable manifolds of Riemannian structure W ith this view the forward kinematics of the robot defines a map between these two manifolds manifold to task manifold and its J a c obian are evaluated in cleverly constructed cost functionals B ecause of the construction the results are not specific to particular robot arrangements but generalized to the entire robotic task space or task manifold. or the mapping from joint space to task space. Instead I am interested in the serial link manipulator design which best approximates a target impedance. In Ch. 3, E quation 3 6, I defined a cost functional comprised of the torque errors at each joint that arise from end effector impedance errors. U sually whe n trying to PAGE 93 93 optimize the design or performance of a robot one runs into the issue of designing a cost functional that m ixes linear units of position or force with angular units of orientation or t orque. This approach avoids this process of trying to balanc e incompatible units. In this approach, Jacobian mapping from joint space to task space, and the elastic element in each SEA to capture the aspects of the robot we wish to optimize and the t ask we are using to define optimality all in one equation. 5.3 Kinematics for Six DOF Manipulator Actuated by The six DOF serial link manipulator actuated by SEAs will be kinematically c haracterized via Crane and Duff [40] with the base SEA output shaft oriented vertically upward. In this method of describing the general kinematics of a serial link manipulator, the proximal joint axis has joint unit vector assigned to it. Moving distall y along the manipulator, each remaining SEA joint axis has assigned to it ascending joint unit vectors through Relating two consecutive joint vectors and we have (5 1) where represents a unit vector perpendicular to both and and manifests in the link Running between joint vectors and and along unit v ector is the scalar quantity which represents what is called the link length of link Considering a third consecutive joint and joint vector the distance between vectors and running along joint axis is repr esented by the scalar quantity which represents the joint length of link PAGE 94 94 Figure 5 1. Rendering of geometric information describing 6 DOF links. (photo c o urtesy of author) For a typical industrial 6R serial link manipulator, the inverse kin ematics procedure described by C rane and Duff y produces sixteen unique sets of joint angles for a desired end effector position and orientation. Each set of joint angles positions the joints of the robot in a different configuration, altering how toque from joint space maps into force/torque in task space. Ideally, one would consider all possible joint solutions in the design optimization of a 6R serial link manipulator. However, due to the complexity of the analysis, only one set of joint angles was used as a starting point for the PAGE 95 95 subsequent analysis and optimization. This restriction is easily removed if computational time and resources are unbounded. 5 .4 Defining a Set of Differential Equations for Six DOF Manipulator Actuated by In order to model a six DOF manipulator actuated by SEAs, E quations 2 13, 2 14, an d 2 15, which represent a single SEA, need to be extended to represent a manipulator comprised of six SEAs and five links. Being a serial link manipulator, there will be a proximal SEA, whose outer ho using is fixed to ground, and five distal SEA s. Between these SEAs will be the links of the manipulator. Each link runs from the output shaft of the more proximal SEA to the housing of the more distal SEA, rigidly connecting the two. Unlike in the two DOF manipulator of Chapter 3 and 4, the end effector of the six DOF manipulator will be the output shaft of the most distal SEA, through which the robot will interact with its environment. As in Chapter 3, Autolev was used t o reliably generate the differential equations describing the system Autolev is a multibody dynamics software package that allows the user great control in the differential equation formulation process [24] Autolev generated accelerations for the motor shaft, HD output shaft, and output shaft for all six actuators. T hese accelerations are functions of the currents applied to each motor, the mass, center of mass locations, and inertias of each shaft, the rotational positions and velocities of each shaft, the friction torque at each shaft, the stiffness and damping torq ues between each shaft, the forces experienced at the end effector of the manipulator, and the inertias, masses and center of mass locations of each link and each SEA housing. It is also worth mentioning, of critical importance to these calculations were t he reaction torques at each harmonic drive, as these torques PAGE 96 96 are responsible for transferring torque created at distal actuators to more proximal actuators. Within each actuator, the same model parameters as found in Ch. 2 were used for inertia, stiffness damping, and friction. For each shaft within each SEA, masses and center of mass locations were taken from Table 3 1. 5.5 Six DOF Cost Function The six DOF optimization cost function is the original cost function used in Chapter 3 with the addition of gravity compensation torque at each joint. The six DOF manipulator will not have all joints oriented parallel with gravity at all times. Accordingly, the resulting torque at each SEA created by gravity was included in the cost functional so that along the optimal trajectory, the optimal serial link manipulator creates the desired end effector impedance, and compensates for gravity. (5 2 ) 5.6 Six DOF Design of Experimentation for GPOPS II The simulation and optimization scenari o of the six DOF manipulator closely resemble s that for the two DOF manipulator from Chapter 3. The desired location of the end effector of the robot as defined in the base robot reference frame is 500 m m in the x directi on 0 mm in the y direction, and 100 m in the z direction. The desired orientation of the end effector of the robot has the end effector axis of the robot, the local z axis, pointing in the negative z direction, and the end effect ors x PAGE 97 97 and y axis oriented in x and negative y directions, respectively. The desired translation al impedance was again set to be 500 and the desired rotation al impedance was set to be 100 The value of rotati on al impedance was taken from the same pedicl e screw implantation study that inspired the translation al impedance selected for analysis in Chapters 3,4, and 5 [25] As was done in Ch. 3, the disturbance force for the system approximates a 25 N step input, and moves from 0 N to more than 95% maximum loa d in less than 250 milliseconds (Equation 5 3) disturbance force as smooth as possible so that GPOPS II could best deal with the disturbance in modelling and optimization. This disturbance force was applied in the positive and negative x and y directions, creating four experimental scenarios for consideration. (5 3 ) 5. 7 Six DOF Initial Parameters In Ch. 3, the desired end effector location and impedance informed the initial guess and bounds for link lengths. In this chapter, it was decided to start the analysis with the link properties taken from the Mitsubishi PA 10 6C industrial manipulator. This provides a feasible ini tial guess for kinematic and in ertial link parameters, from which GPOPS II can fu rther optimize the design. The Mitsubish i PA 10 6C industrial manipulator physical parameters were taken from [41] Just as was done in Ch. 3, the initial guess for all six SEA spring stiffnesses was taken to be the mean of spring stiffnesses found in Ch. 2, i.e. 7404 PAGE 98 98 Figure 5 2. A Mitsubishi PA 10 6C serial link manipulator (photo from: http://sstti.ua.es/en/supporting infrastructure/robotics and sensorization laboratory.html ) 5.8 Six DOF Initial Guess A PID controller was used to drive the manipulator to the desired impedance to generate initial guesses for GPOPS II optimizations This P ID controller closed the loop on joint torque at each SEA, similar to the two DOF manipulator simulation This controller proved to be very difficult to gain tune, and as a result produced large torque errors and poor trajectories for use within GPOPS II. In an effort to produce better trajectories for use within GPOPS II, the six DOF initial guess controller was modified to close the loop on desired position at each output shaft. With the disturbance force being 25 N and the desired translational impedance being 500 N/m, the steady state position of the robot in response to these loads will change = 0.05 m = 50 mm. The steady state positions for each trial were are included in Table 5 1. Table 5 1. Six DOF steady state initial guess EE positi ons Trial 1 Trial 2 Trial 3 Trial 4 Steady state EE X position (mm) 550 450 500 500 Steady state EE Y position (mm) 0 0 50 50 Steady state EE Z position (mm) 100 100 100 100 PAGE 99 99 The steady state orientation of the end effector should not change in response to the applied loads, so the steady state orientations for each trial equal the initial pos ition and orientation. For eac h trial, the joint solution set the least angular distance from the initial joint solution set was used as that tr ials desired joint angles with that Closing the loop on desired output joint angles pro vided accurate torque tracking and smooth trajectories at each joint. These re sults are included in Appendix E As was recommended in Chapter 3, a considerable amount of damping was incorporated into the control strategy to generate these initial guesses. This added to the initial guess cost function evaluation, but allowed GPOPS II to better utilize the initial guess provided, and simplify the process for arriving at an optimal solution. The set of joint angles used to position the end effector at the des ired starting location and orientation was arbitrarily chosen. This set of joint angles was used for all four end effector loads considered. The cost associated with this initial guess was calculated to be 861. 5.9 Six DOF GPOPS II Optimization Results Wit h GPOPS II optimizations, it is wise to start with simplified optimization problems, and gradually increase the complexity of the problem until ultimately the de sired optimization problem and its solution, is reached. Heeding this advice, the six DOF op timization work began with only the first phase considered, no parameters of the robot being selected by the optimizer, and gravitational acceleration set to zero This was the simplest representation of the 6 DOF system considered. Even this system proved to be difficult to solve to a low order of accuracy. So difficult, in fact, that no other PAGE 100 100 six DOF optimization results were pursued The initial mesh for the system was made up of 101 collocation points evenly spaced over the 10 seconds of trial 1. In the interest of time, the optimization was carried out on the initial mesh of collocation points only, and not allowed to re mesh. Setting the NLP tolerance to 1e 1, a solution was reache d after 419 NLP iterations, and 20.9 hours. The mesh error associated with this first mesh was 19,247. The cost associated with this GPOPS II solution was 1 3 372 5.10 Six DOF GPOPS II Optimization Discussion GPOPS II had difficulties driving the six DOF m anipulator to the optimal solution. For the simplified optimization considering only one loading condition, no gravity present, and no robot design parameters selected by the optimizer, GPOPS II was only able to manage 1e 1 NLP errors and 19,247.mesh error The cost at the solution reached was 13,372 or approximately 15 times greater than the initial guess cost of 861. This is understandable, as the cost used within the NLP solver is a variable representation of the true cost, which is only as accurate as t he mesh and NLP solution used to generate this cost approximation. This NLP solution error is four orders of magnitude greater than what was achiev ed in the two DOF optimizations, and t his mesh error is ten orders of magnitude greater than what was achieve d in the two DOF optimizations. The ability of the NLP solver to find an optimal solution on a given mesh is a function of the mesh used to discretize this problem, and the actual problem being solved. The GPOPS II default value of collocation points on th e first mesh of analysis is 41. The mesh used for the six DOF optimization consisted of 101 collocation points. The NLP solver IPOPT was given 1000 iterations to reach an optimal solution, and failed to do so at NLP tolerances lower than 1e 1 on this first mesh Even though the number of collocation points in the first PAGE 101 101 mesh of the six DOF optimization more than doubles the number of default collocation points in GPOPS II, it is possible that the initial mesh was insufficient for the six DOF optimization. 5. 10.1 Six DOF Mesh Issues A priori, it is very difficult to determine w h ere in time collocation points should be placed in a GPOP S II optimization so as to arrive at an optimal solution and minimize the number of collocation points. Ideally, GPOPS II would select these collocation points. GPOPS optimization, but it can select where additional points should be located on a given mesh for lower meshing errors [32] Thus, th e problem of the six DOF initial mesh being too sparse could have been solved by allowing GPOPS II to add collocation points to the original mesh when that solution fails to meet tolerance. meshi ng takes place when the NLP is far from an optimal solution, many more collocation points can be added to a mesh than would otherwise be required. These additional collocation points will need to be evaluated at every subsequent NLP iteration in the optimi zation, and can add a considerable amount of time to the optimization. For this reason, focus was placed on perfecting optimization results on the initial mesh. An accurate initial mesh solution would yield subsequent meshes with fewer collocation points a nd greatly improve the speed of the optimization. Unfortunately, NLP errors on this first mesh could not be decreased more than the 1e 1 tolerance, and attempts to allow GPOPS II to re mesh and resolve the problem only brought m inimal decreases in NLP erro rs and required considerably more time to arrive at low tolerance solutions. PAGE 102 102 5.10.2 Six DOF Computation Time Issues Computation t ime was of great concern with six DOF GPOPS II optimizations. In every NLP iteration the cost function and dynamic constraints need to be evaluated. The dynamics for the six DOF manipulator turned out to be approximately 37,000 lines of C code. This code was parallelized for speed using the C++ toolbox openMP compiled into a Matlab execu table (.mex file) for use within M atlab. Even after all these measures taken to improve performance of the dynamics code, there was no getting around the sheer number of floating point operations that needed to be performed at every loop iteration, and for every collocation point on a given mesh. It is for these reasons that the low accuracy solution took 20.9 hours to arrive at after only 419 NLP iterations. 5.10.3 Six DOF Inverse Kinematics I t was originally thought that the difficulties GPOPS II was having in reaching a solution had to do with the SEA shaft angle bounds applied in GPOPS II and the nature of joint solutions for a 6R manipulator. For each initial guess, the ranges of SEA shaft angles were observed, an d the extremal values were cataloged. To these extremal values, 0.5 radians was added to upper values, and 0.5 radians was subtracted from lower values to create the overall bounds for shaft angles in each optimization. Analysis revealed that these bounds on joint angles allow for only one set of joint solutions to position the end effector at the desired initial pose, the steady state final position found in each initial guess, and a variety of positions and orientations between and close to these two pose s. Therefore, it is not possible that multiple joint solution sets could have interfered with the optimization and confused GPOPS II. PAGE 103 103 5.10.4 Six DOF Numerical Issues One problem believed to have contributed to the difficulty in generating a six DOF initi al guess and arriving at optimal solutions within GPOPS II was the numerical sensitivity of the six DOF model. To analyze this hypothesis, the dynamics for the init ial two DOF manipulator, both o ptimized two DOF manipulators, and the six DOF manipulator dy namics was linearized For all manipulators, linearization took place about the starting orientation of each trial, with the end effector forces and gravitational acceleration set to zero The state vector of the system is described below. (5 4) For the all two DOF manipulators and for the six DOF manipulator The linearized dynamics matrix for each manipulator was represented as: (5 5) Where (5 6) The size of affects the calculated elements of The matrix was calculated f or three values of and for all 4 manipulators in question. The condition number of each matrix was then calculated. These condition numbers are included in Table 5 2. Table 5 2. Condition numbers for each manipulator considered in GPOPS II analysis. =1e 2 =1e 6 =1e 10 Two DOF Initial Robot 2.13 e+022 4.34 e+020 1.80 e+021 Two DOF Optimal Robot 2.21 e+026 7.16 e+021 4.18 e+021 Two DOF Springs Selected Robot 3.00 e+024 1.21 e+021 3.51 e+021 Six DOF Initial Robot 1.30 e+028 8.25 e+034 8.84 e+045 PAGE 104 104 The condition number for each linearized dynamics matrix represents the ratio of the largest to smallest e igenvalue s in that matrix [42] It is a measure of a sensitivity to input values, or values multiplied into th is matrix [42] The condition numbers for the three two DOF manipulators considered seem to approximate one another at order 20 to 26. The six DOF manipulator condition numbers seem to be distinctly higher at order 28 to 45. This means that the approximate change in accel eration for a unit change in position or velocity is far higher for the six DOF manipulator. This would make the process of fitting states to the optimal trajectory and satisfying the differential equations of motion that much more difficult for GPOS II, a nd The controllability subspace was also calculated for each manipulator. The controllability matrix was given by: (5 7) And the controllability matric was found via: (5 8) The rank of the controllability matrix was calculated for all values of manipulators and all values of The rank of which represents the dimensionality of the controllable subspace for each manipulator, was calculated [43] [42] For = 1e 2, all manipulators had equal to one. This could be a result of being too small and leading to inaccurate approximations of For = 1e 6 and 1e 10, all two DOF PAGE 105 105 manipulators had equal to five. For = 1e 6 and 1e 10, the six DOF manipulator had equal to nine. All two DOF manipulators had state vectors of length twelve and a controllable subspace dimensionality of five. The six DOF manipulator had a state vector of length thirty six, and had a controllable subspace dimensionality of only nine. Th e ratios of controllability subspace to state vector length for the two DOF is approximately 0.42 and for the six DOF robots is 0.25. This relative reduction in dimensionality could increase the difficulty for GPOPS II in finding the optimal trajectories f or the six DOF manipulator, as the dimensionality of reachable states for the system is, relative to the two DOF manipulator, limited. 5 .11 Optimal Design of a Serial Link Manipulator Actuated by Series Elastic Actuators Conclusion In this chapter, the ser ial link manipulator design procedure proposed in C hapter 3 was extended from two DOF manipulators to six DOF manipulators. Six DOF optimizations proved to be far more difficult to optimize, and no six DOF physical design optimizations were successfully c arried out Only low resolution trajectory optimizations were completed successfully and reported. Reasons for why six DOF optimizations proved to be so difficult were hypothesized and quantitatively explored. PAGE 106 106 CHAPTER 6 CONCLUSION 6.1 Review of Disserta tion A Series Elastic Actuator was designed, tested, and characterized. This information was used to model and design a two DOF robot using this same actuator design. An optimal two DOF robot was found for a set of loading conditions, desired end effector location, and desired impedance. This robot was assembled and tested, and its perfo rmance was compared to predictions This procedure used for designing a two DOF robot was extended to a six DOF robot, and problems with these attempts were discussed 6.2 Future Work In Chapter 2 the harmonic drive component of the SEA fitted model was found to be less accurate than either fitted elastic element model. Future work in time domain characterization of SEAs could include isolated testing of harmonic drives for better observation and characterization. In Chapter 4 the bearing friction component of the fitted SEA model was found to be inaccurate with increasing output shaft loads. A time domain friction model that takes into account output sh aft loading conditions could be develo ped for more accurate SEA model ing. In Chapter 5, the design procedure from Chapter 3 was extended to 6R manipulators, and many difficulties where encountered. More work could be done to f inish this 6R design procedure and achieve converged optimal solutions, but it is quite obviously and extremely challenging numerical problem that requires significant computational resources, or reformulation to a simpler task. PAGE 107 107 APPENDIX A SEA INERTIA VALUES Below are the matrix representation of inertia tensors for A) Motor Shaft, B) Harmonic Drive Shaft, C) Output Shaft, and D) SEA Housing. Note that all matrix representations of inertia tensors are expressed in a 1 2 3 coordinate system attached to assemb ly, with the origin of each coordinate system located at their respective assemblies center of mass. The units of each term are A B C D PAGE 108 108 A ) Motor Shaft 1 2 3 1 25409.52 3.2 21.03 2 3.2 25435.12 57.22 3 21.03 57.22 7090.82 B) Harmonic Drive Shaft 1 2 3 1 23723.71 3.07 2.93 2 3.07 25522.81 2.12 3 2.93 2.12 23820.86 C ) Output Shaft 1 2 3 1 22831.35 582.33 0.56 2 582.33 24200.78 3.55 3 0.56 3.55 23343.46 D ) SEA Housing 1 2 3 1 1875649.09 81.84 7519.21 2 81.84 1760354.81 70.13 3 7519.21 70.13 926556.62 PAGE 109 109 APPENDIX B INERTIA D ERIVATION OF TWO DOF L INKS Below is a rendering of the two DOF manipulator, with the kinematic link lengths and structural link lengths indicated. The kinematic link length of the proximal link is the distance between the proximal joint axis and the distal joint axis. The kinematic link length of the distal link is the distance between the distal joint axis and the end effector axis of the robot. The structural link length of the proximal link is the total length of the link as measured along the same axis as the kinematic link length. Similarly, the structural link length of the distal link is the total length of the link as measured along the same a xis as the kinematic link length. Within the formulation within GPOPS ii, it is the kinematic link length of the proximal link , and the kinematic link length of the distal link, that are being selected However, for calculating mass, cent er of mass, and inertia properties for the link, the structural link length is also required. PAGE 110 110 The structural link length starts 0.02m before the proximal joint axis of each link. In the proximal link, the structural link length, ends 0.043m bef ore the distal joint axis. In the distal link, the structural link length, ends 0.02m after the end effector axis of the robot. For both proximal and distal links, the width of each link, was set equal to 0.04m, and the thickness of each link , was set equal to 0.015m. The density, of Al 6061 was assumed to be 2700 Proximal link property derivation Four tabs were included in the end of the proximal link for bolting to the distal SEA. Each tab was 0.0074m by 0.0075m by 0.005m. The mass of these four tabs were calculated in the following equation : = (B 1) Excluding these four tabs from the mass calculation for the main section of the proximal link, the mass of this section is as follows: = (B 2) The total mass for the proximal link approximated as: (B 3) The inertia of the proximal link was approximated by that of a rectangular prism taken about its center of mass, and then projected to the proximal joint axis via parallel axis theorem. To account for the extra inertia associated with the end bracketry of the link, t he mass associated with this bracketry was consolidated into a point mass, and PAGE 111 111 projected via the parallel axis theorem to the proximal joint axis. These are shown below: Main link inertia = (B 4) Main link parallel axis component = (B 5) End bracket inertia = = (B 6) The total inertia of the proximal link is approximated as: (B 7) The center of mass for the link, including the end brackets is as follows: PAGE 112 1 12 (B 8) Dist al link property derivation The total mass of the distal link was approximated as follows: = (B 9) The properties of the distal link were approximated by a rectangular prism. Again inertia was calculated about its center of mass, and then projected to the distal joint axis via the parallel axis theorem. Main link inertia = (B 10) Main link parallel axis component = (B 11) The total inertia of the dist al link is approximated as: PAGE 113 113 (B 12) The center of mass for the link is as follows: (B 13) PAGE 114 114 APPENDIX C TWO DOF G ENERAL O PTIMIZATION GPOPS II R ESULTS Phase 1: 25 N ewtons applied in X direction PAGE 115 115 PAGE 116 116 Phase 2: 25 Newtons applied in X direction PAGE 117 117 PAGE 118 118 Phase 3: 25 Newtons applied in Y direction PAGE 119 119 PAGE 120 120 Phase 4: 25 Newtons applied in Y direction PAGE 121 121 PAGE 122 122 APPENDIX D TWO DOF S PRINGS PRE S PECIFIED GPOPS II R ESULTS Phase 1: 25 Newtons applied in X direction PAGE 123 123 PAGE 124 124 Phase 2: 25 Newtons applied in X direction PAGE 125 125 PAGE 126 126 Phase 3: 25 Newtons applied in Y direction PAGE 127 127 PAGE 128 128 Phase 4: 25 Newtons applied in Y direction PAGE 129 129 PAGE 130 130 APPENDIX E SIX DOF INITIAL GUESSES FOR GPOPS II Below are the results of the initial guess for the low resolution six DOF GPOPS II optimization. This optimization considered only trial 1 end effector loads, no gravity considered in the simulation. PAGE 131 131 PAGE 132 132 PAGE 133 133 PAGE 134 134 APPENDIX F SIX DOF LOW RESOLUTION GPOPS II OPTIMIZATION RESULTS Below are the results of the low resolution six DOF GPOPS II optimization. This optimization considered only trial 1 end effector loads, no gravity considered in the simulation, and no manipulator design parameters were selected by GP OPS II. PAGE 135 135 PAGE 136 136 PAGE 137 137 APPENDIX G I NERTIA D ERIVATION OF S IX DOF L INKS Below is a rendering of the six DOF manipulator links, with the link length, and twist angle indicated. The manipulator kinematic parameters are optimized for by GPOPS II, and thus allowed to vary. The following method was used to calculate the mass, center of mass, and inertia of each link about the proximal joint axis of the link as a function of joint length, link length, and twist angle. It is assumed that each link is a hollow tube, with a plate at the proximal and distal end of the link used for locating the link to its proximal and distal actuators. The PAGE 138 138 tubes of the link are assumed to be of constant inner radius of = 0.01 meters. Tubes of th is form would allow for power and sensor cabling to be run throughout the robot, and would provide a large cross sectional moment of inertia, making the tubes very strong while still minimizing material used. The material of each tube was assumed to be Al 6061 This is a general approach to representing links in a serial link manipulator. T her e exist s a set of joint lengths, link lengths, and twist angles, for which this approach would not work, as they would create links that would pass though the actuators they are meant to attach to. It is clearly possible that a given combination of joint lengths, link lengths, and twist angles might be physically realizable using a different method of representing arbitrary lin ks in a manipulator. This is, decidedly, a shortcoming of this method. However, for analysis within GPOPS, what is required for eac h link is an approximation ion of the link s inertia tensor for a given set of joint lengths, link lengths, and twist angles Though the method proposed for link generation in this study is imperfect, it satisfies the requirements for simulation within GPOPS ii. In future works, updated approaches to generating arbitrary link properties can be explored. Link P roperty C alculations The tube of the link runs directly from the output shaft of the proximal SEA to the housing of the distal SEA. A right triangle can be drawn with the hypotenuse being PAGE 139 139 equal to the tube length of the link, and the two perpendicular sides of this triangle representing the structural joint length and link length of the link. The relationship between the structural link length, and the kinematic link length , is as follows: link length offset (G 1) The relationship between the structural joint length, and the kinematic link length, is as follows: joint length offset (G 2) These relationships account for the offset between the bolting location at the housing of the distal SEA, and the output shaft of the distal SEA. This can be shown below: The length of the lin k tube is calculated via the following: PAGE 140 140 (G 3) The outer radius of the tube section , was calculated to be the radius that would just be able to handle 200N m of torque, which was determined via a root finding algorithm applied to the following equation : (G 4) The proximal plate of the link was set to a disk of radius, = 0.0155m, equal in radius to the SEA output shaft it attaches to. The proximal pla te was set to be = 0.01m thick. The distal plate of the link was approximated to be a rectangular plate = 0.03m wide by = 0.035m high by = 0.005m thick. The mass of the proximal is approximated as: = (G 5) = (G 6) = (G 7) (G 8 ) The properties of the link were approximated by a hollow tube. Inertia was calculated about its center of mass, and via the parallel axis theorem tube inertia at COM = = = (G 9) PAGE 141 141 tube parallel axis tensor = = (G 10) tube inertia at base = = = (G 11) So far, the matrix representation of the inertia tensor for the tube has been expressed in the body fixed coordinate system. To express the matrix representation of ing rotation matrixes where used. (G 12) Rotation matrix 1 = = = (G 13) Rotation matrix 2 = = = (G 14) tube inertia at proximal joint axis = PAGE 142 142 (G 15) The center of mass for the link, including proximal and distal brackets is approximated as follows: (G 16) PAGE 143 143 APPENDIX H TWO AND SIX LINK MODEL ENERGY VERIFICATION To assess the differential equations generated for the two and six DOF manipulators, t he following energy analysis was performed For each manipulator, an initial kinetic and potential energy was set for the system. The system was then simulated for 10 seconds, with all non conservative forces and torques set to zero. Valid differential equations of motion would produce constant va lues of kinetic energy over the course of simulation. For the two DOF manipulator all joint angles were set equal to zero radians at time t=0. The motor shaft and harmonic drive shaft velocities were set to zero rad/s, and the output shaft for each SEA was set to 10 rad/s. Energy calculations for the system seem to show noisy but constant values over the 10 seconds considered PAGE 144 144 For the six DOF manipulator all joint angles were set equal to zero radians at time t=0. The motor shaft and harmonic drive shaft velocities were set to zero rad/s, and the output shaft for each SEA was set to 10 rad/s. Calculations seem to show oscillations in the total energy of the system, perhaps hinting at flaws in the derived differential equations of motion for the six D OF manipulator. PAGE 145 145 LIST OF REFERENCES [1] Neville Hogan, "Impedance Control, An Approach to Manipulation," in American Control Conference San Diego, California, 1984. [2] J. Luh, "An Anatomy of Industrial Robots and Their Controls," IEEE Transactions on Automatic Control, Vols. AC 28, no. 2, pp. 133 153, 1983. [3] Gill A. Pratt, Matthew M. Williamson, Peter Dillworth, Jerry Pratt, Karsten Ulland, Anne Wright, "Stiffness Isnt Everything," in International Symposium on Experimental Robotics Stanford, California, 1995. [4] Matthew M. Williamson, "Series Elastic Actuators," Massachusetts Institute of Technology Artificial Intelligence Laboratory, Cambridge, Massachusetts, 1995. [5] David William Robinson, "Design and Analysis o f Series Elasticity in Closed loop Actuator Force Control," Massachusetts Institute of Technology, Cambridge, Massachusetts, 2000. [6] Michael Zinn, Oussamma Khatib, Bernard Roth, J. Kenneth Salisbury, Playing it Safe: A New Actuation Concept for Human Friendly Robot Design, IEEE Robotics and Automation Magazine, 2004. [7] A. Albu Schaffer, S. Haddadin, Ch. Ott, A. Stemmer, T. Wimbock, G. Hirzinger, "The DLR Lightweight Robot: Design and Control Concepts for Robots in Human Environments," International Robot: An International Journal, pp. 376 385, 2007. [8] M.A. Diftler, J.S. Mehling, M.E. Abdallah, N.A. Radford, L.B. Bridgwater, A.M. Sanders, R.S. Askew, D.M. Linn, J.D. Yamokoski, F.A. Permenter, B.K. Hargrave, R. Platt, R.T. Savely, R.O. Ambrose,, "Robonaut 2 The First Humanoid Robot in Space," in IEEE Int ernational Conference on Robotics and Automation Shanghai, China, 2011. [9] Ivar Thorson, Darwin Caldwell, "A Nonlinear Series Elastic Actuator for Highly Dynamic Motions," in International Conference on Intelligent Robots and Systems San Francicso, USA, 2011. [10] Arash Ajoudani, Marco Gabiccini, Nikos G. Tsagarakis, Antonio Bicchi, "Human Like Impedance and Minimum Effort Control for Natural and Efficient Manipulation," in ICRA 2013 Karlsruhe, Germany, 2013. PAGE 146 146 [11] Toshio Tsuji, Yoshiyuki Tanaka, "Bio mimetic impedance control of robotic manipulator for dynamic contact tasks," Robotics and Autonomous Systems, vol. 56, pp. 306 316, 2008. [12] Yanan Li, Shuzhi Sam Ge, Qun Zhang, Tong Heng Li, "Neural Networks Imped ance Control of Robots," IET Control Theory and Applications, vol. 7, no. 11, pp. 1509 1519, 2013. [13] Chae H. An, J. M. Hollerbach, "Dynamic Stability Issues in Force Control of Manipulators," in American Control Conference Minneapolis, MN, USA, 198 7. [14] Robert H Cannon Jr., Eric Schmitz, "Initial Experiments on the End Point Control of a Flexible One Link Robot," The International Journal of Robotics Research, vol. 3, no. 3, pp. 62 75, 1984. [15] Nevio Luigi Tagliamonte, Fabrizio Sergi, Gi orgio Carpino, Dino Accoto, Eugenio Guglielmelli,, "Design of a Variable Impedance Differential Actuator for Wearable Robotics Applications," in International Conference on Intellignt Robotics and Systems Taipei, Taiwan, 2010. [16] Shane A. Migliore, Edgar A. Brown, and Stephan P. Deweerth, "Novel Nonlinear Elastic Actuators for Passively Controlling Robotic Joint Compliance," Transactions of the ASME, vol. 129, pp. 406 412, 2007. [17] Giorgio Carpino, Dino Accoto, Fabrizio Sergi Nevio Luigi Tagliamonte, Eugenio Guglielmelli, "A Novel Compact Torsional Spring for Series Elastic Actuators for Assistive Wearable Robots," Journal of Mechanical Design, vol. 134, no. 12, pp. 1 10, 2012. [18] Oludayo John Oguntoyinbo,, "PID Control of Brushless DC Motor and Robot Trajectory Planning Simulation with MATLAB/SIMULINK," Vaasan Ammattikorkeakoulu University of Applied Sciences, Vaasa, Finland, 2009. [19] Anand Sathyan, "Digital PWM control of Brushless (BLDC) Motor Drives," Illinois Institute of Technology, Chicago, Illinois, 2008. [20] C. Makkar, W. E. Dixon, W. G. Sawyer, G. Hu, "A New Continuously Differentiable Friction Model For Control Systems Designs," in Proceedings of the 2005 IEEE/ASME International Conference on Advanced Intelligent Mechatronics Montery, California, USA, 2005. [21] H. D. Taghirad, "Robust Torque Control of Harmonic Drives Systems," McGill University, Montreal, Quebec, 1996. PAGE 147 147 [22] T. Tjahjowidodo, F. Al Bender, H. Van Brussel, "Theoretical modelling and experimental identification of nonlinear behavior in harmonic drives," Mechatronics, vol. 23, pp. 497 504, 2013. [23] Curt Preissner, Thomas J. Royston, Deming Shu, "A High Fidel ity Harmonic Drive Model," Journal of Dynamic Systems, Measurement, and Control by ASME, vol. 134, no. January, 2012. [24] David A. Levinson, Thomas R. Kane, "Multibody Systems Handbook," in AUTOLEV A New Approach to Multibody Dynamics Springer Verla g, 1990, pp. 81 102. [25] Christian Ott, Cartesian Impedance Control of Redundant and Flexible Joint Robots, Berlin: Springer Verlag, 2008. [26] Bertsekas, Dimitri, "Nonlinear Programming," Athena Scientific, Belmont, Massachusetts, 1995. [27] Donald E. Kirk, Optmal Control Theory: An Introduction, Mineola, New York: Dover Publications, Inc., 1970. [28] Anil V. Rao, "A Survey of Numerical Methods for Optimal Control," in American Astronomical Society Pittsburg, PA, 2009. [29] Moritz Die hl, "PhD Course on Dynamic and Embedded Optimization for Signol Processing, Estimation, and Control," 13 16 August 2012. [Online]. Available: http://homes.esat.kuleuven.be/~mdiehl/AALBORG/OptimalControl.pdf. [Accessed 20 January 2014]. [30] Anil V. Rao, David A. Benson, Christopher Darby, Michael A. Patterson, Camila Francolin, Ilyssa Sanders, Geoffrey T. Huntington, "GPOPS, A MATLAB Software for Solving Multiple Phase Optimal Control Problems Using the Gauss Pseudal Spectral Method," ACM Transactions on Mathematical Software, vol. 37, no. 2, pp. 22 39, 2010. [31] Bernard Shizgal, Spectral Methods in Chemistry and Physics: Applications to Kinetic Theory and Quantum Mechanics, Dordrecht: Springer, 2015. [32] Michael A. Patterson, Anil V. Rao, "GPOPS II: A MATLAB Software for Solving Multiple Phase Optimal Control Problems Using hp Adaptive Gaussian Quadrature Collocation Methods and Sparse Nonlinear Programming," ACM Transactions on Mathematical Software, vol. 41, no. 1, pp. 1 37, 2014. PAGE 148 148 [33] J. Lenarcic, U. Stanic and P. Oblank, "Some Kinematic Considerations for the Design of Robot Manipulators," Robotics and Computer Integrated Manufacturing, vol. 5, no. 2 3, pp. 235 241, 1989. [34] Brian Armstrong H elouvry, Pierre Dupont, Carlos Canudas De Wit, "A Survey of Models, Analysis Tools, and Compensation Methods for the Control of Machines with Friction," Automatica, vol. 30, no. 7, pp. 1083 1138, 1994. [35] P. S. Shiakolas, D. Koladiya, J. Kebrle, "Opt imum Robot Design Based on Task Specifications Using Evolutionary Techniques and Kinematic, Dynamic, and Structural Constraints," Inverse Problems in Engineering, vol. 10, no. 4, pp. 359 375, 2002. [36] J. A. Snyman, F. Van Tonder, "Optimum Design of a Three Dimensional Serial Robot Manipulator," Structural Optimization, vol. 17, no. 2 3, pp. 172 185, 1999. [37] R. Saravanan, S. Ramabalan, N. Ebenezer, R. Natarajan, "Evolutionary bi criteria optimum d esign of robots based on task specifications," International Journal of Advanced Manufacturing Technology, vol. 41, no. 3 4, pp. 386 406, 2009. [38] L. Stocco, S. Salcudean, F. Sassani, "Matrix Normalization for Optimal Robot Design," in IEEE Internati onal Conference on Robotics and Automation Leuven, Belgium, 1998. [39] F. C. Park, "Optimal Robot Design and Differential Geometry," Journal of Mechanical Design, vol. 117, no. B, pp. 87 92, 1995. [40] Carl D. Crane III, Joseph Duffy, Kinematic An alysis of Robot Manipulators, New York: Cambridge University Press, 1998. [41] Ira Hill, "A Novel Testing Platform for Characterizing Cervical Spine Biomechanics," The University of Florida, Ginesville, 2013. [42] Stephen H. Friedberg, Arnold J. Insel, Lawrence E. Spence, Linear Albegra 4th Edition, New Jersey: Pretence Hall, Inc., 2003. [43] Joo P. Hespanha, Linear Systems Theory, Princeton, New Jersey: Princeton University Press, 2009. [44] J. Lofberg, "YALMIP: A toolbox for modeling and optimization in MATLAB," in IEEE International Symposium on Computer Aided Control Systems Design Taipei, Taiwan, 2004. PAGE 149 149 [45] J. V. Burke, D. Henrion, A. S. Lewis, M. L. Overton,, "HIFOO A MATLAB Package for Fixed order Controller Design and H infinity Optimization," in IFAC Symposium on Robust Control Design Toulouse, France, 2006. [46] N.G.Tsagarakis, Matteo Laffranchi, Bram Vanderborght, D.G.Caldwell, "A Compact Soft Actuator Unit for Small Scale Human Friendly Robots," in IEEE International Conference on Robotics and Automation Kobe, Japan, 2009. [47] Henry Martyn Paynter, Analysi s and Design of Engineering Systems, Cambridge, Massachusetts: M.I.T. Press, 1961. PAGE 150 150 BIOGRAPHICAL SKETCH Ja red Jones received his Bachelor of Science in Mechanical Engineering from the University of Florida in the spring of 2010. He began his PhD in the fall of 2010, and completed his PhD in the fall of 2016 During his time in graduate school, he worked to balance his studies with surfing, Brazilian Jiu Jist u, and rooting for his beloved G ators. |