Open Collections

UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Kinematic, force and dexterity analyses of planar robotic grasping Saliba, Michael A. 1991

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata

Download

Media
831-UBC_1991_A7 S26.pdf [ 12.12MB ]
Metadata
JSON: 831-1.0098595.json
JSON-LD: 831-1.0098595-ld.json
RDF/XML (Pretty): 831-1.0098595-rdf.xml
RDF/JSON: 831-1.0098595-rdf.json
Turtle: 831-1.0098595-turtle.txt
N-Triples: 831-1.0098595-rdf-ntriples.txt
Original Record: 831-1.0098595-source.json
Full Text
831-1.0098595-fulltext.txt
Citation
831-1.0098595.ris

Full Text

KINEMATIC, FORCE AND DEXTERITY ANALYSES OF PLANAR ROBOTIC GRASPING By Michael A. Saliba B.Mech.Eng.(Hons) University of Malta, 1986 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTERS OF APPLIED SCIENCE in THE FACULTY OF GRADUATE STUDIES (DEPARTMENT OF MECHANICAL ENGINEERING ) We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA September 1991 © Michael A. Saliba, 1991 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of fl/l<echos\\bol jfiyirt-etifinQ The University of British Columbia Vancouver, Canada Date 30 SeykwL-cV 1^1) DE-6 (2/88) 11 Abstract The grasping of an object or workpiece is an important step of robotic manipulation and is the main function of a robot hand. This has been a subject of considerable research. Robotic hands that can conform to the shape of a workpiece can provide efficient and stable handling, and furthermore, through suitable sensors, can serve as means for extracting information regarding the workpiece. But, for reasons of cost, size and weight, conformability of a robotic hand should be realized with the least possible number of actuators. In this study, a planar robotic gripper, suitable for the grasping and handling of a va-riety of objects, is designed, analysed, constructed and tested. The design has two fingers, four links, and two actuators, but can be directly extended to more links while keeping the number of actuators unchanged. This robotic end effector exhibits two distinctive features. First, it utilizes fewer number of actuators than it has degrees of freedom, thus providing quantifiable savings in weight, size, complexity and cost. Second, it is capable of conforming to different shapes and sizes of object through autonomous, se-quential switching of the actuator drives between links. An analysis of the mechanics of the grasping process using a hand of this type is carried out, and simulated results are compared to the experimental results. Close agreement is exhibited in these com-parisons. The analysis is extended to a six degree-of-freedom gripper, and to grippers having simultaneous, rather than sequential, link motion. In the final part of the study, a new method for the measurement of dexterity in grasping is proposed, based on the results obtained from the analyses and simulations. Accordingly, a robotic hand of the types analysed can be assigned a Grasping Dexterity value, defined as a measure of the ability of the hand to achieve successful grasps under a variety of situations in the shortest possible time. Table of Contents Abstract ii List of Figures x List of Tables xiv Summary xv Nomenclature xvii Acknowledgement xxi 1 Introduction 1 1.1 Background 1 1.1.1 Enter the Robot 1 1.1.2 On Grasping, Manipulation and Dexterity 3 1.2 Statement of Objectives 5 1.3 Motivation and Problem Formulation 5 1.3.1 The Gripping Device 5 1.3.2 An Analysis of the Grasping Process 7 1.3.3 Grasping Dexterity 7 1.4 Relevance of this Research 8 2 Literature Review 9 2.1 Introduction 9 iii IV 2.2 Grasping and Manipulation 10 2.3 Dexterity 12 2.4 Gripper Models 13 2.5 Sensing and Control 14 3 The Design and Construction of a Robot Gripper 15 3.1 Introduction 15 3.2 Design Considerations 15 3.2.1 The Jaw Configuration 15 3.2.2 Drive Constraints 16 3.2.3 Gripping Sequence 16 3.2.4 Drive System 17 3.2.5 Feedback Signal 20 3.2.6 Switching System 20 3.2.7 Manufacturing, Assembly and Maintenance Considerations . . . . 21 3.3 The Friction-Switching Mechanism 21 3.4 Mechanical Design of the Gripper 24 3.4.1 General Layout 24 3.4.2 Motion Transmission 25 3.5 Drive and Control System Design 25 3.5.1 Actuation 25 3.5.2 Sensing and Feedback 27 3.5.3 Circuit Design 27 3.5.4 An Integrated Control Program 29 3.6 Manufacture 32 3.7 Description of Operation 32 V 3.8 Design Features 34 3.9 Design Limitations - Discussion 37 4 Analysis of the Planar Grasping Process 42 4.1 Introduction 42 4.2 Overview 42 4.3 One-Link Contact Analysis 46 4.3.1 Contact with the Lower Link 46 4.3.2 Contact with the Upper Link 52 4.4 Two-Link Contact Analysis 56 4.4.1 Graspability 56 4.4.2 Object Slip 57 4.5 Three- and Four-Link Contact Analysis 60 4.5.1 Form Closure Check 60 4.5.2 Grasp Stability Check 61 4.6 Additional Analysis for Other Types of Hands 61 4.6.1 6-dof Gripper with Sequential Link Motion 61 4.6.2 4-dof Gripper with Simultaneous Link Motion 67 4.6.3 6-dof Gripper with Simultaneous Link Motion 71 4.7 Discussion 75 4.7.1 Rigidity 75 4.7.2 Constant Motor Motion 75 4.7.3 Contact Bounce and Object Initial Velocities 77 5 Fractional Effects for Combined Translational and Rotational Motion 79 5.1 Introduction 79 5.2 Previous Work 79 VI 5.3 Theorems and Derivations 81 5.4 Evaluation of Ff and Tf 89 5.5 Results 90 5.6 Polynomial Solutions for Ff and Tf 91 5.6.1 Polynomial Solutions for Frictional Force Ff 92 5.6.2 Polynomial Solutions for Frictional Torque Tf 92 6 Computer Simulations 94 6.1 Introduction 94 6.2 The Simulation Program SQ4 95 6.2.1 General Description 95 6.2.2 Main Program Layout 98 6.2.3 Description of Subroutines 102 6.3 Simulation of a Six Degree-of-Freedom Gripper with Sequential Link Mo-tion (Program SQ6) 120 6.3.1 Introduction 120 6.3.2 The new subroutines 120 6.4 Simulation of a Four Degree-of-Freedom Gripper with Simultaneous Link Motion (Program SM4) 121 6.5 Simulation of a Six Degree-of-Freedom Gripper with Simultaneous Link Motion (Program SM6) 123 7 Experimental Work 124 7.1 Introduction 124 7.2 Testpieces . . 124 7.3 Preliminary Experimentation and Settings 124 7.4 Experimental Procedure 125 vii 8 Results and Discussion 128 8.1 Introduction 128 8.2 Simulated Results using SQ4 128 8.2.1 Object Behavior during One-Link Contact 129 8.2.2 Grasp Stability for Two-Link Contact 133 8.3 Experimental Results 134 8.3.1 A Typical Experimental Run 134 8.3.2 Final Experimental Results 135 8.4 Sources of Discrepancies between Simulated and Experimental Results . . 137 8.4.1 Errors in the Simulation Program 137 8.4.2 Experimental Errors 138 8.5 Non-dimensionalization of Parameters 139 9 Grasping Dexterity 143 9.1 Introduction 143 9.2 Parameter Classification 143 9.3 Parameter Influences on the Grasping Process 145 9.4 A Grasping Dexterity Measure 148 9.5 Using the Simulation Programs to Measure Dexterity: An Illustrative Ex-ercise 150 9.6 Discussion I: Factors which Influence Grasping and Dexterity 151 9.6.1 Object Shape and Orientation 152 9.6.2 Sensing and Feedback 152 9.6.3 Manipulability 153 9.6.4 Dexterity vs. Intelligent Grasping 154 9.7 Discussion II: Human vs. Mechanical System Dexterity 155 V l l l 10 Conclusions and Future Work 158 10.1 Introduction 158 10.2 Accomplishments 158 10.3 Future Work 159 10.4 Conclusion 161 Graphs 162 Plates and Drawings 173 Bibliography 194 A Gripper Manual 200 A. l Operating Instructions 200 A.2 Parameter Settings 202 A.3 Specifications 203 A.4 Component Information 203 A. 5 Control Program Listing 204 B Surface Friction Effects - Supplementary Analysis 205 B. l Frictional Force and Torque Equations: Indeterminate Solutions . . . . . 205 B.2 Integration of Friction Force Equation 205 B. 3 Integration of Friction Torque Equation 207 C Simulation Programs Users Guide 208 C l Programs SQ4, SM4 208 C. 2 Programs SQ6, SM6 210 C.3 List of Subroutines 210 ix C.3.1 Programs SQ4 and SM4 213 C.3.2 Additional Routines in Programs SQ6 and SM6 215 Glossary 217 List of Figures 1.1 The Gripping Device: Problem Statement 6 3.2 Jaw Configuration 16 3.3 Gripping Sequence No. 1 18 3.4 Gripping Sequence No. 2 19 3.5 Conceptual Drawing of the Switching Device (Sectional View) 22 3.6 Indexers 1 and 2 26 3.7 Linear Force Sensing Strip on Outer Link 28 3.8 Schematic Representation of a Typical Gripping Process 33 3.9 The Gripper in Open Configuration 35 3.10 The Gripper in Closed Configuration 35 3.11 Friction Switch for a Three Joint Configuration 38 3.12 Redesigned Screw and Screw Cap (Sectional View) 40 4.13 Parameters affecting the Grasping Process 43 4.14 Position and Velocity vectors: single contact, lower link 46 4.15 Force Equilibrium Diagram for Case 1. . 47 4.16 Link and Object Movements during One-Link Contact 49 4.17 Velocity of Contact Point: single contact, lower link 50 4.18 Force Equilibrium Diagram for Case 2 51 4.19 Position and Velocity vectors: single contact, upper link 53 4.20 Velocity of Contact Point: single contact, upper link 55 4.21 Angles of Force for Polygon in Equilibrium 56 x X I 4.22 Limiting Condition for Object Slip 57 4.23 Object Slip: Configuration 1 Grasp 58 4.24 Change of Object Centroid Velocity with Time (numerical) 59 4.25 Object Slip: Coniguration 2 Grasp 60 4.26 A Translational Form Closure Grasp 61 4.27 The "Outer" Links in a Multi-Link Grasp 62 4.28 Position and Velocity vectors: single contact, outer link 63 4.29 Velocity of Contact Point: single contact, outer link 66 4.30 Position and Velocity vectors: single contact, upper link 68 4.31 Velocity of Contact Point: single contact, upper link 70 4.32 Position and Velocity vectors: single contact, outer link 71 4.33 Velocity of Contact Point: single contact, outer link 74 4.34 Control Scheme for DC Motor Actuated Links 76 4.35 Forces Acting on the Object during the Impact Period 78 5.36 Force and Moment of Sliding Friction 80 5.37 Cylinder with Combined Linear and Rotational Motion 81 5.38 Elemental Frictional Force, u = 0 82 5.39 Elemental Frictional Force, u / 0 83 5.40 Elemental Frictional Torque, v = 0 84 5.41 Elemental Frictional Torque, v ^ 0 84 5.42 Elemental Frictional Force for Combined Translational and Rotational Mo-tion 86 5.43 Elemental Area of Contact 87 5.44 Plots of Normalized Frictional Force and Torque vs. lni; 91 6.45 SQ4 Animated Display: Examples of a Successful Grasp 97 xii 6.46 Link Designations 99 6.47 Flow Chart for a Main Program Section 100 6.48 Program Hierarchical Structure 103 6.49 Detecting Contact of Object with Link A 104 6.50 Detecting Contact of Object with Link B 105 6.51 Actuation of Link C. 106 6.52 Points and Lines which may collide 109 6.53 Detection of Contact with the Palm I l l 6.54 Contact with Link A and Palm I l l 6.55 Detection of Contact with Link C. 113 6.56 Object Position Calculation for Links A and B . 117 6.57 Object Position Calculation for Links C and D 118 6.58 Contact with Links A and C. 119 6.59 SQ6 Animated Display: Examples of a Successful Grasp 122 7.60 Initial Position of Object 126 7.61 Experimental Set-up (schematic) 126 8.62 Plot of 0 vs. time for Sim. 01 (Extrapolated) 130 8.63 Plot of 6 vs. time for Sim. 01 (Extrapolated) 130 8.64 The Palm Span S 140 8.65 Hand with LINK = 0.5 140 8.66 Hand with LINK = 2 141 8.67 Grasp with D < 1 142 8.68 Grasp with D > 1 142 9.69 Initial Object Centroid Position for a Successful Grasp 149 X l l l C.70 The Input File HANDHARD 209 C.71 The Input File HANDINPT 209 C.72 Example of Monitor Output 210 C.73 Format of the Three Output Files 211 C.74 The Input File HAND3HARD 212 C.75 The Input File HAND3INPT 212 List of Tables 3.1 Pin Descriptions: Digital Output 28 3.2 Pin Descriptions: Digital Input 29 7.3 List of Testpieces 125 7.4 Experimental Runs 127 8.5 First Run Results for Exp. No. 3 135 8.6 Experimental and Simulated Results 136 9.7 Simulation Run Results and Grasping Dexterity 151 9.8 Qualitative Description of a System with High Dexterity 153 xiv Summary xv Summary In this thesis, several aspects of the grasping problem are addressed, with particular emphasis on the development of a simple and versatile robotic end effector, and on analysis of grasp dynamics and of dexterity in grasping. In Chapter 1, a general introduction to robots and on grasping is given, followed by the precise objectives and motivation for this research. Chapter 2 provides a review of relevant literature. In Chapter 3, a robotic end effector that has been developed by the author in the Laboratory for Industrial Automation at the University of British Columbia is described. The chapter discusses how the specifications for the gripper were initially set, and provides detailed descriptions of the designs for the mechanical and the drive and control systems. The operation of the gripper is then described. Finally, the features and limitations of the design are identified and discussed. In Chapter 4, an analytical study of the planar grasping, by the end effector, of an object which is placed on a flat, horizontal surface is presented. The response of the object during the various stages of the grasping process, in terms of the influencing parameters (e.g. hand dimensions; object dimensions, mass and initial position; link speeds; friction coefficients), is derived. In the latter part of the chapter, the analysis is extended to different types of grippers, thus further increasing the number of parameters that are investigated. In Chapter 5, an analysis of sliding friction for combined translational and rotational motion over an area of contact is given. While the derived expressions complement the grasping analysis in Chapter 4, they are also generally applicable to situations where there is relative motion between flat surfaces, under conditions of dry friction. Summary xv i In Chapter 6, four simulation programs based on the analysis given in Chapters 4 and 5 are described in detail. The first program simulates the planar grasping of cylindrical objects by a hand of the type described in Chapter 3, whereas the other three programs simulate the grasping by the different types of grippers that are analysed in the final parts of Chapter 4. In Chapter 7, the grasping experiments on the end effector are described. The chap-ter includes a description of the method for measuring and tracking various relevant parameters (e.g. object position, time). In Chapter 8, the results from simulations and experiments are presented, compared and discussed. The influences of various parameters on the grasping process are estab-lished, and the manner in which certain key parameters should be non-dimensionalised is proposed. The chapter also includes a discussion of the various sources of error present in both simulation and experiment. In Chapter 9, the results are discussed in the context of developing a measure for gripper dexterity in grasping. A classification method for the affecting parameters is proposed, parameter influences are summarized, and interaction between the various pa-rameters is discussed. A new measure for grasping dexterity is proposed, and a specimen calculation is given. In the final two sections of this chapter, various points regarding dexterity are discussed. In Chapter 10, the accomplishments and contributions resulting from this research are summarized, and suggestions for future work in the area are discussed. Nomenclature Variable Hand Parameters Pivot A Coords. Pivot B Coords. Pivot C Coords. Pivot D Coords. Pivot E Coords. Pivot F Coords. Palm Width Link A Length Link B Length Link C Length Link D Length Link E Length Link F Length Palm Offset Distance Finger 1 Offset Distance Finger 2 Offset Distance Palm Span Link A Angular Position Link B Angular Position xvii Nomenclature Symbol Name in Program (XA,YA) [XB,VB) (XB,YB) (XC,YC) (XD,YD) (XE,VE) (XE,YE) (XF,VF) (XF,YF) P P LA LINKA LB LINKB LC LINKC LD LINKD LE LINKE Lp LINKF Po PALMO 7i T l T2 T2 S aA AA dB AB Nomenclature Link C Angular Position etc AC Link D Angular Position ac AD Link E Angular Position ctg AE Link F Angular Position ap AF Link A Angular Speed UJA WA Link B Angular Speed UJB WB Link C Angular Speed uc WC Link D Angular Speed UJD WD Link E Angular Speed UJE WE" Link F Angular Speed UJF WF Object Parameters Object Centroid Coords. Object Radius Object Mass Object Density Object Height Object Linear Speed Object Linear Speed (x-y) Object Angular Position Object Angular Velocity Object Angular Acceleration Angle of v to Link A Normal Angle of v to Link B Normal (x,y) (X,Y) R R m M p DENSITY h HEIGHT v V (x,y) (XVEL,YVEL) 6 TH 6 THV 0 THA %bA PSIA V>B PSIB Nomenclature Angle of v to Link C Normal Angle of v to Link D Normal Angle of v to Link E Normal Angle of v to Link F Normal Contact Point Variables Contact Distance along Link A Contact Distance along Link B Contact Distance along Link C Contact Distance along Link D Contact Distance along Link E Contact Distance along Link F ibc PSIC ipD PSID ipE PSIE 1>F PSIF lA LA lA LAV iA LAA lB LB lB LBV iB LBA lc LC lc LCV lc LCA lD LD lD LDV lD I D A lE LE lE LEV 4 LEA lF LF / F LFV Z"F LFA Nomenclature xx Forces and Friction Coefficients Normal Contact Force Link A FNA FNA Normal Contact Force Link B FNB FNB Normal Contact Force Link C FNC FNC Normal Contact Force Link D FND FND Normal Contact Force Link E FNE FNE Normal Contact Force Link F FNF FNF Tang. Contact Force Link A FNA FCA Tang. Contact Force Link B FNB FCB Tang. Contact Force Link C FNC FCC Tang. Contact Force Link D FND FCD Tang. Contact Force Link E FNE FCE Tang. Contact Force Link F FNF FCF Surface Friction Force (static) Ff FF Surface Friction Force (kinetic) Ffk FFK Surface Friction Torque (static) Tf TF Surface Friction Torque (kinetic) Tfk TFK Obj-Surf Fric. Coefft. (static) Ms CF Ob j-Surf Fric. Coefft. (kinetic) MSfc CK Obj-Link Fric. Coefft. (static) PL CFS Obj-Link Fric. Coefft. (kinetic) MLfc CFK X X I Acknowledgement I would like to thank Dr. C. W. de Silva for his constant supervision and guidance throughout this research. Special thanks also to D. Camp and D. Yuen, technicians in the Mechanical Engineering Workshop, for their assistance in the construction of the apparatus, and Chief Technician A. Schreinders for many helpful suggestions for the mechanical design. I would also like to thank the Canadian Commonwealth Scholarship and Fellowship Plan for sponsoring my degree, and the Natural Sciences and Engineering Research Council's Industrial Automation Chair, held by Dr. C.W. de Silva, for partial funding of this research. Last but not least I would like to thank my family for their constant support and encouragement from home. Chapter 1 Introduction 1.1 Background 1.1.1 Enter the Robot Historical The word "robot" was coined by a Czechoslovak writer, Karel Capek, for his 1923 play R.U.R. or Rossums Universal Robots. It is derived from the Czech word robota, meaning work. Between 1923 and 1956, the only realm in which robots graced a presence was in that of science fiction, a major exponent being Isaac Asimov who in 1942 crystallised the notion in his famous Three Laws of Robotics. Production of industrial robots began in the United States with Unimation Inc., the world's first robot manufacturer. It all started when businessman Joseph T. Engelberger met George C. Devol, an engineer who had an idea for a "pick and place" robot - a machine "smart" enough to pick up an object and place it somewhere else. Engelberger decided to gamble on this novelty, and five years later, in 1961, Unimation sold its first robot. It was designed to pour hot metal into a die, for General Motors, and the project earned Engelberger the affectionate title of "Father of Robotics". 1 Chapter 1. Introduction 2 Robots Today and Tomorrow A constantly increasing demand for higher productivity and for consistant quality have led to robots becoming quite commonplace in today's industry. In most cases, the intro-duction of automated machinery to manufacturing processes results in dramatic increases in efficiency and competitiveness. This development, however, has also encountered its fair share of opposition, and in particular has triggered some apprehension that robots may become a major cause for unemployment. This may be true to some degree in the short term, but a robotisized world will in all probability ultimately produce many more jobs than it will destroy. This is true of most technological advances. When the automobile first appeared, for example, a number of blacksmiths and horse-drawn carriage manufacturers were put out of business, and the demand for whips and hay diminished. A far greater number of automobile related jobs, however, were created, and the need for gasoline, rubber and highways was vastly expanded. The main applications of robots, at present, are in predefined manufacturing oper-ations, typically dangerous jobs (e.g. spot welding, spray painting) and/or monotonous jobs (e.g. assembly, stamping). Such machines, often called hard automation systems, are inherently inflexible and generally very expensive. The need for a new generation of robot, which is more adaptable to a wide variety of manufacturing functions, has emerged over the last few years. This quest has opened up a multitude of new and exciting avenues for research. These include the development of more innovative and effective sensing and control systems, the design of more versatile and ingenuitive mechanical systems, and the development of intelligent robots, with the capability to take certain decisions regarding their next course of action based on inputs from sensors and a series of programmed algorithms. Chapter 1. Introduction 3 The day when an android like Lt. Commander Data will be sitting at the helm of a Federation Starship1 may still be far into the future, however the outlook for robotics appears to be very bright. Given the present rate of progress it will not be long before our perception of industry will have been fully revolutionised, and humans will be promoted in whole to the more meaningful role that they have always been meant to occupy. 1.1.2 On Grasping, Manipulation and Dexterity One of the most important parts of a robot is its end effector or gripper, which provides the link between the robot and the workpiece. Correct design of the end effector is essential if one is to achieve the desired degree of interaction between the two. The quality and versatility of performance is invariably enhanced if the gripper possesses a large number of degrees of freedom and multiple sensing capabilities. One of the more common functions that a robot is often called upon to carry out is grasping of an object or workpiece. This may form part of a sequence designed to relocate the object, or it may be necessary to simply hold the object while it is being subjected to other workloads. For a grasping operation by a robot to be successful, it must therefore result in a stable grasp being achieved, i.e. the grasped object must be capable of resisting external forces and moments without being dislodged from the end effector. A more complex requirement that a robot end effector may be called upon to carry out is manipulation of the object, or adjustment, by the robot hand itself, of the object position within the grasp. For example, when we pick up a pencil, we first hold it in a certain manner, however before we start to write we manipulate it into a different kind of grasp. The ability of an end effector to effectively carry out the above functions is referred to as dexterity. Sturges [49] defines dexterity, qualitatively, as skill in the use of the *A reference to the T V series Star Trek: The Next Generation Chapter 1. Introduction 4 hands. Other qualifiers that have been used to describe dexterity are manual adroitness and neatness of handling [48], [17]. The Grasping Problem In customised, non-flexible designs the grasping problem can be considered at present to be practically solved, or at least settled with a high degree of achieved success. The ulti-mate objective of today's research in robotic grasping, however, is to produce a versatile gripper that is able to grasp a wide variety of objects under a wide variety of conditions. The complexity of the problem thus increases immensely, since the end effector must now be adaptable to different and perhaps time-varying situations. Furthermore, grasp-ing should be able to provide further information about the object, its environment, and the process itself (shape, texture, firmness, forces, etc.) Many of the factors which must be addressed are introduced and defined in the Literature Review of this thesis. The Dexterity Issue Although it appears to be a very simple matter to define dexterity qualitatively, consider-ably greater difficulty has been encountered in the generation of a quantitative definition of the property. A measure for dexterity is important in evaluating and comparing dif-ferent hands, and in providing concise and easily understood specifications for a gripper design. Parameters that may be present in a "dexterity equation" include the number of degrees of freedom, power, speed, sensing capabilities, force and motion resolutions, surface texture and perhaps size of the hand. Inevitably, the most dexterous end effector which comes to mind is the human hand, and mechanical designs are very often compared to this biological counterpart. The reason that the human hand is so dexterous may be that it incorporates all of the above mentioned parameters, and perhaps more, in just the right proportions! Chapter 1. Introduction 5 1.2 Statement of Objectives The three primary objectives of this research are the following: 1. To design, analyse and construct a conformable gripping device that utilizes fewer actuators than it has degrees of freedom. 2. To obtain a better understanding of the mechanics of planar grasping through analysis, computer simulation and experimentation. 3. To propose a new measure for dexterity in grasping, based on simulation and ex-perimental results. This work explores various facets of the grasping of objects by a robot hand, in order to enhance the knowledge on the subject and to provide a foundation for future research in the specific areas treated. Thus, although the three objectives listed above strongly complement each other, each one may also be treated as a separate topic in its own right, and the approach taken in some of the following chapters will sometimes treat each topic as such. The unifying factor, however, is that the successfully completed gripping device (Objective 1) is used to experimentally validate the grasping analysis and simulation (Objective 2), which in turn will enhance the knowledge in the mechanics of grasping and, in particular, is used in the development of a grasping dexterity measure (Objective 3)-1.3 Motivation and Problem Formulation 1.3.1 The Gripping Device Most gripper designs are subjected to the classical compromise between dexterity and simplicity. For example, the number of available degrees of freedom of a gripper is known Chapter 1. Introduction 6 undefined object shape. gripper jaws close onto object conforming to its shape. n A A number of actuators is kept to a minimum. Figure 1.1: The Gripping Device: Problem Statement. to improve the dexterity and versatility. Weight, size and complexity, however, will also increase as a result. This is normally an undesirable side effect, particularly when low-power dexterous hands are needed, and for many applications may be unacceptable. The objective of this part of the research was to design and construct a gripping device that would conform to any shape or type of object needing to be grasped. This conformability, however, had to be achieved using a limited number of actuators. In particular, the number of actuators required for operation of the gripper would be less than the number of gripper joints or degrees of freedom. A pictorial representation of these objectives is shown in Figure 1.1. The significance of a design that meets these objectives is that the gripper, while retaining gripping versatility due to its ability to conform to different objects, would do so in the most economical manner, since weight, size, cost and complexity normally can be decreased when the number of actuators is reduced. Added benefits that are expected include lower power consumption, simpler control and higher reliability, with reduced Chapter 1. Introduction 7 danger of actuator overloading. 1.3.2 An Analysis of the Grasping Process A good understanding of the mechanics (including dynamics) of the grasping process is an essential prerequisite for the development of better and more effective gripper designs. In this part of the research, the dynamics involved in the grasping of a cylindrical object by a four-link end effector is analysed. In particular, the object movement during grasping, slip conditions at the link-object contact points, and forces exerted on the object are investigated. The analysis is later.extended to a six-link end effector. This research has three main immediate objectives. First, analysis of the handling of a variety of object sizes, weights and surface characteristics leads to identification of the manner in which these parameters influence the grasping process. Second, a capability for keeping accurate track of changes in linear and angular position, velocity and acceleration of the object, and of changes in the forces and torques acting on the object during the grasping process is developed. Third, the magnitudes and directions of external forces that can be withstood by a successful grasp can be determined. A long term objective of this work, which is outside the scope of this thesis, is to use the analysis as a basis for further study involving the grasping of more complex shapes using more general grippers of various levels of dexterity and degrees of freedom. 1.3.3 Grasping Dexterity The approach to be taken in the grasping dexterity analysis was not rigidly denned at the onset of this research program, since this would be heavily dependant on the results of the grasping analysis. The need to somehow quantify gripper dexterity is clear, as has been already pointed out in Section 1.1.2 of this thesis. Once the influence of the various Chapter 1. Introduction 8 parameters studied in the grasping analysis is established, this information can be used in a global definition for grasping dexterity. 1.4 Relevance of this Research The relevance of this research is summarized as follows: 1. The new gripping device provides savings in weight, size, complexity and cost of the gripper, while reducing the danger of actuator overload. 2. A good understanding of the mechanics and dynamics of grasping provides the ability to predict changes in object position, velocity and acceleration, as well as in contact forces, during grasping, together with an ability to predict whether or not a grasping attempt, given a set of initial conditions, will be successful. 3. A grasping dexterity measure enables evaluation of, and comparison between, dif-ferent grippers in terms of performance and grasping effectiveness. Chapter 2 Literature Review 2.1 Introduction J.F. Engelberger [15] compares robot end effectors with human hands. He says: .. . Compared with the human hand those of the robot are but clumsy traves-ties. They have fewer articulations and they are without any sense of feeling or touch. But, they can be designed to withstand high temperatures so that they are able to work with parts that are red hot. . .. Today's mechanical hands may still be "clumsy travesties", however the development in the last decade has been quite extraordinary. In Survey Japan [27] over 220 different grippers are illustrated and described. As the role played by dedicated grippers in North American, Japanese and European industry becomes more prominent, the number of standard, modular grippers and other end effector components available on the market continues to increase. A typical strategy for gripper selection is given in Micallef [37]. As the demand for more flexible manufacturing and assembly systems increases, however, so does the need for more versatile grippers, and for grippers capable of manipulating objects of different size, weight and shape. In Nahon and Angeles [40], a Mechanical Hand is described as a kinematic chain with time-varying topology that becomes reduntantly actuated when an object is grasped (conventional grippers offer no such redundancy). The need to develop better mechanical hands has led to a large amount of research into the mechanics and control of grasping and handling, and into more enveloping issues such 9 Chapter 2. Literature Review 10 as the quantification of end effector dexterity. 2.2 Grasping and Manipulation In Mason and Salisbury [35], the goal of the grasping operation is stated to be to totally constrain the position/orientation of the object relative to the hand by closing the fingers. Salisbury uses the screw system approach to analyse the kinematic design of articulated hands in terms of mobility conditions and constraints imposed on a grasped object, by virtue of its contact with finger links. The Grip Transform G, which maps finger contact wrenches to resultant net forces on and in a grasped object, is introduced. The role played by G, in controlling manipulation with a multifingered manipulation system, is similar to the role played by the Jacobian matrix J in controlling manipulation with an open chain arm [35]. Methods for controlling force, position and stiffness of grasped objects, based on analysis using the grip transform, are described. Cole, Hauser and Sastry [10] define grasp stability or force closure for a grasp as a situation where any given force-moment on the object can be achieved by an appropriate choice of contact forces lying in the friction cone. It is proposed that, as long as contact forces lie within the friction cone, a grasp map G of full rank implies force closure. Bologni [6] discusses the determination of the optimal position of the constraints on the object and the values of the forces that must be applied in order to achieve stability. Grasp stability for planar 3-point contact, including friction, is amply discussed. Grasp stability for planar 2-link contact is tackled by Fearing in [16], and extended to a spatial analysis in [19]. In Markenscoff et al [34], it is shown that when Coulomb friction is taken into account, under the most relaxed assumptions three fingers are necessary and sufficient to fully constrain an object in two dimensions, and four fingers in three dimensions. Chapter 2. Literature Review 11 Form closure is defined by Asada and Kitagawa in [2] as a set of constraints that are placed around a rigid body so that the rigid body motion is not allowed in any direction. The kinematic formulation of form closure grasps is derived, and the total constraint is shown to be a purely geometrical property. An algorithm for achieving a form closure grasp is presented. In [34] Markenscoff et al show that form closure of any two-dimensional bounded object with piecewise smooth boundary, except a circle, can be achieved by four fingers. For three dimensions it is proven that form closure of any bounded object with piecewise smooth boundary can be achieved with twelve fingers if the object does not have a rotational symmetry. Grasp stiffness is investigated in Mason and Salisbury [35], Cutkosky et al [11] and Cutkosky [12]. In its most general form, the stiffness of a grasp is a linearized expression of the relationship between forces applied to the grasp and the resulting motions [11]. It is shown that the stiffness if is a direct measure of the grasp stability, and that as long as K is positive-definite, the changes in the forces on the object will have a stabilizing effect [35] [11]. Dynamic analysis of the redundantly actuated closed loop formed by the grasped object - finger combination is treated in Nahon and Angeles [40]. The recursive Newton-Euler technique is used to derive the equations of motion for each link and for the grasped object. The redundant equations are then optimized for minimum forces and moments. The dynamics of manipulation are modelled in Hui and Goldenberg [23]. Two fun-damental examples of manipulation are considered: (i) rolling of a round object by a robotic finger against a fixed surface, and (ii) rolling of a round object between two fin-gers. Here, manipulation is defined as the deliberate and finite displacement of a grasped object, with respect to the fingers holding it, from an initial stable grasp to a final stable grasp. In Montana [38], a set of contact equations are derived to describe the motion of the point of contact over the surfaces of two contacting objects in response to a relative Chapter 2. Literature Review 12 motion of these objects. This analysis leads to an application in fine grip adjustment, where two fingers that grasp an unknown object, through the use of a tactile sensing capability, locally optimize their grip for maximum stability. A relatively recent area of study is the analysis of sliding manipulation, with primary applications in dexterity investigations (ref. Section 2.3). This was introduced in Brock [8] and [9], where the constraint state of an object within a grasp was found as a function of a number of controllable variables, such as grasping force and externally applied forces. The mechanics of sliding at the finger-object contact, for both point and soft finger contacts, is analysed in Cutkosky et al [20] and Kao and Cutkosky [28]. In [20] a constraint equation for the initiation of sliding motion, in terms of the forces and moments at the finger-object contact, is derived and verified by experiment. In [28] the analysis is extended to the transient response at the contact immediately following the onset of slip. An analysis of the behavior of an object as it slips between two fingers is given in Fearing [19]. 2.3 Dexterity The definition and quantification of robot end effector dexterity is treated in Lu and Soni [31], Lu, Cai and Soni [32] and [33], Wright, Demmel and Nagurka [53], Sturges and Wright [48] and Sturges [49] [50]. In [31], dexterity is defined in terms of the range of motion of a grasped object within the grasp (i.e. relative to the palm). In a planar analysis, the Rotation Dexterity Index (RDI) for a given position of the grasped object within the workspace (workarea) of the hand, is defined as the ratio of reachable arc length (by a fingertip) to circumference of a measuring circle through the contacts. A dexterity chart, showing the variation of RDI over the entire workspace of the hand, is introduced. The dexterity of the hand is then expressed by a scalar quantity derived from the dexterity chart. Similar analysis Chapter 2. Literature Review 13 for the spatial case is introduced in [31] and developed in [32]. In [33] the characteristics of dexterity charts for spatial robot hands are discussed. In [53], a selection procedure for manufacturing hands is discussed based on a dexterity spectrum and a design space framework. The influence of number of degrees of freedom, resolution, speed, workspace, sensor capability and knowledge base are discussed. In [48], a model for dexterity, combining frequency and resolution, is proposed: (ndof)( frequency) dexterity = —:— [resolution) This model, however, returns results of a dimensional nature. In [49], Sturges takes a more human-centred approach to quantifying dexterity. Based in part on a large number of human observations, he designs an assembly calculator, in the form of a special slide rule, that can be used to calculate an index of difficulty for a large number of different tasks. The dexterity of a hand needed to perform a specific task will depend on the difficulty of that task. In [50] the concept of index of difficulty is extended to give a quantitative measure of dexterity based on Task/Affector interactions. 2.4 Gripper Models In Jacobsen et al [26], the design considerations for the Utah/MIT hand are discussed, and the various subsystems of the hand are described. The following three reasons are listed in the paper as the basis on which the choice of anthropomorphic geometry was made: (i) the human hand is an existance proof that a wide variety of very complicated manipulative tasks can be accomplished by a single system provided that the end effector includes sufficient complexity to address proposed tasks and that the control system and its sensors are adequate; (ii) this configuration allows the human researcher to compare operations of the robot hand with operations of his own natural hand; and (iii) an anthropomorphic configuration has potential application as a slave element in a teleoperation system. Chapter 2. Literature Review 14 Other hands are described in [30], [47], [52], [36], [42] and [14]. In Pettinato and Stephanou [41], a massively redundant, tentacle-based robot manipulator is proposed as an alternative to dexterous manipulation by an arm/hand combination. 2.5 Sensing and Control A large proportion of the research work in robotic grasping and manipulation deals in sensing and control issues. Since these issues are not the primary concern for the work covered in this thesis, the main concepts will only be lightly touched upon here. In IFS Publications and Springier-Verlag [25], a large number of tactile and other non-vision sensors applicable to robotics are described and investigated. The literature collection explores various active and passive force sensors, tactile array sensors, tactile transducers and ultrasonic sensors. In Bicchi, Salisbury and Dario [5], it is suggested that dexterous manipulation can be subdivided into three main parts: grasp, micro-movement and tactile exploration. The paper discusses an application of Intrinsic Tactile sensing (ITs) to grasp and manipulation control. In [29], Kenaley and Cutkosky investigate the behavior of prototype fingertips using electrorheological (ER) fluids with elemen-tary tactile sensing. Howe and Cutkosky [21] present a scheme for sensing small "skin" accelerations, for slip and texture perception. Issues dealing with control in grasping and coordinated manipulation are tackled by Hsu, Li and Sastry. [22], Cole, Hauser and Sastry [10] and Murray and Sastry [39]. In [22] control algorithms for the coordinated control of a multifingered robot hand are developed. In [10] a scheme based on a generalization of the computed torque method of control of robot manipulators is presented for the control of multi-fingered hands with rolling contact. A comparison of the performances of several proposed control algorithms is given in [39]. Other control structures are described in [1], [24] and [7]. Chapter 3 The Design and Construction of a Robot Gripper 3.1 Introduction A casual leafing through Ichiro Kato's compilation [27] would soon lead to the conclusion that the ultimate restriction to gripper design is only that of the imagination. Even within a given framework of technology, the number of different concepts and variations that can be put into effect in designing a gripper is virtually limitless. In this chapter, the design, construction and operation of a new, passively-conformable robotic end ef-fector are described. The distinctive features and the limitations of the gripper are also discussed. 3.2 Design Considerations 3.2.1 The Jaw Configuration When the object shape and material are known beforehand, gripper design is simplified since these properties can be exploited to produce a customized gripper that can carry out its specific task in a very efficient manner. Since the aim here, however, was to design a more general gripping device, the jaws were required to conform to different shapes with minimum sacrifice in grasping effectiveness. It was decided that a two-finger, four-joint configuration would be a simple and effective way of achieving this (ref. Figure 3.2), since most objects can normally be effectively gripped at four contact points. Moreover, fabrication and assembly of such a system was expected to be relatively straightforward. 15 Chapter 3. The Design and Construction of a Robot Gripper 16 Lejt-H and Right-H and Finger. Finger. Figure 3.2: Jaw Configuration. 3.2.2 Drive Constraints Since one of the requirements of the design was that the number of actuators should be less than the number of degrees of freedom, each actuator had to provide the drive for more than one joint. A method therefore had to be devised to switch the actuator drive automatically between joints when such switching was required during the gripping and releasing sequences. It was decided to use one actuator per finger. In this way the two fingers would be independant of each other, and each actuator would be driving two joints. 3.2.3 Gripping Sequence There were two alternatives for the gripping sequence. In both cases, the hand would start in the open position (ref. Figure 3.3(a)). In the first case, the fingers rotate about the lower joints until contact is made with the object (ref. Figure 3.3(b)). At this point, drive switching occurs, and the fingers start to rotate about the upper joints until four Chapter 3. The Design and Construction of a Robot Gripper 17 contacting points are achieved (ref. Figure 3.3(c)). In the second sequence, the upper links first rotate about the upper joints until contact is made with the object (ref. Fig-ure 3.4(b)). Drive switching occurs and the lower links start to rotate until four point contact is achieved (ref. Figure 3.4(c)). In order to achieve four point contact with the second gripping sequence, the upper links must slide over the object and the upper joints may also have to open up in order to accomodate the movement of the lower link. These have been considered serious disadvantages, since sliding of the link along the object may damage the object and also the hand, and because the above described interference with the upper joint position is undesirable. In the first gripping sequence however, when the lower links make initial contact with the object, the object may be pushed away from the palm and out of the grasp. This occurrence appears to be less likely with the second sequence. The first gripping sequence was the one selected since sliding of the object out of the grasp could be prevented by having the upper links in an initially slightly-closed position as shown in Figure 3.2. 3.2.4 Drive System Since the required control was essentially passive, or bang-bang, a pneumatic drive system was considered due to its inherent simplicity. The second option which was considered was the use of a small electrical actuator to affect the drive. Use of an electrical motor would greatly facilitate further improvement and development of the finished gripper (e.g. incorporation of more complex control systems). A hydraulic drive was ruled out due to the limitations in available resources (e.g. need for a hydraulic power supply, expensive components). A hydraulic drive, in any case, is more commonly utilized when large forces are required, which was not the case for this gripper. Chapter 3. The Design and Construction of a Robot Gripper 18 (c) Figure 3.3: Gripping Sequence No. 1. Chapter 3. The Design and Construction of a Robot Gripper 19 Figure 3.4: Gripping Sequence No. 2. Chapter 3. The Design and Construction of a Robot Gripper 20 DC stepper motors were finally selected to drive the gripper, since these offered great flexibility in control and since future development of the end effector was considered to be a factor of major importance. 3.2.5 Feedback Signal Since switching over of the drive from the lower link to the upper link had to occur when the lower link contacted the object, a feedback signal was required in order to trigger off this switching. Two general methods were considered for generating this feedback signal. By the first method, an electrical switch would close a circuit when the lower link came into contact with a rigid object. By the second method, the forces generated when the lower link came into contact with a rigid object and could no longer close onto it would be used to trigger the switching over. The second method was selected for two reasons. First, it was considered important that the gripping surfaces of the end effector be kept free of unnecessary devices so that provision for easier addition of more complex sensing devices (e.g. a tactile sensor) in the future could be maintained. Second, this gripper provided a good opportunity to test and demonstrate a novel, purely mechanical sensing/switching device which is described in Section 3.3. Furthermore, this would provide a passive feedback mechanism devoid of overloading for the sequential actuation of the joints. 3.2.6 Switching System The feedback signal described in Section 3.2.5 would have to be used to effectively switch over the drive between the lower and the upper links. A type of clutch system was considered necessary to affect this switching over. The actual clutch mechanism would have to be mechanical, since it involved the transfer of a mechanical actuator output between two mechanical joints. Chapter 3. The Design and Construction of a Robot Gripper 21 3.2.7 Manufacturing, Assembly and Maintenance Considerations Ease of parts manufacture and assembly, as well as provision for easy maintenance of the finished product, were considered to be two major requirements for this design. The constituent parts of the gripper had therefore to be kept as simple as possible, and provision for adjustments and settings were necessary to make up for any misalignments which might have appeared during assembly. Modularity of the design was also considered important, since separate modules could easily be disassembled during maintenance, and perhaps added on to build more versatile and complex hands. 3.3 The Friction-Switching Mechanism The gripper uses a novel mechanism to sense when the actuator drive should switch from the lower link to the upper link, and to actually switch the drive over. The concept is illustrated in Figure 3.5. A screw (1) is free to rotate on a fixed axle (2) but is constrained from longitudinal or lateral motion. A screw cap (3) has an internal thread which mates with the screw as shown, and a series of horizontal grooves (not a thread) on its outside surface. The screw cap shank (4), which is rigidly fixed to the screw cap, fits loosely into a coupling (5). A key and key way fit between the coupling and the screw cap shank allows rotation to be transmitted from the coupling to the screw cap, but allows the screw cap freedom to move longitudinally. Pinion 1 (6) meshes with the screw as shown to form a worm and wheel mechanism, while Pinion 2 (7) meshes with the outside grooves of the screw cap in what is effectively a rack and pinion mechanism. The actuator (motor) shaft is rigidly fixed to the coupling and imparts rotation to the screw cap. Due to friction at the mating threads between the screw cap and the screw, this rotation is transmitted to the screw, and Pinion 1 rotates. (It should be noted that Pinion 2 will not rotate during this motion because the grooves on the outside of the Chapter 3. The Design and Construction of a Robot Gripper 22 © © © J T U © © Figure 3.5: Conceptual Drawing of the Switching Device (Sectional View). Chapter 3. The Design and Construction of a Robot Gripper 23 screw cap are normal to the axis of rotation and do not constitute a thread.) If Pinion 1 is physically constrained from further rotation, rotation of the screw also becomes physically constrained and ceases. Since rotary motion is still being imparted, via the coupling, to the screw cap, the thread friction between the screw cap and the screw is overcome, and the screw begins to ride longitudinally up the now non-rotating screw, causing Pinion 2 to rotate. The drive has therefore effectively switched from Pinion 1 to Pinion 2. Since the most critical parameter in this switching system is the frictional torque that acts at the mating threads between the screw and the screw cap, a method has been devised to enable adjustment of this parameter. The modified design of the screw and the axle on which it rotates are shown in Drawing I in the Plates and Drawings section of this thesis. The modified screw (P24) is machined out of a special machineable rubber, and has a thin wall which tapers slightly on the inside at its lower section as shown. An internal tapered thread is machined into this lower part of the screw. The upper part of the screw is fixed by setting screws to the hub of a worm gear (P23). The gear and screw are free to rotate over the modified axle (P22). A tapered plug (P26) is rigidly fixed to a thin rod (P25) that passes in a sliding fit through an axial hole in the axle. A tapered thread is machined on the outside of the plug to mate with the tapered thread on the inside wall of the screw. Turning the thin rod (which is accessible at its top end) causes the plug to ride downwards inside the rubber screw, and the lower portion of the screw is deformed so that its outside diameter increases slightly. (Two longitudinal slits, cut into the bottom part of the screw, aid in this deformation.) This results in increased friction between the screw and the screw cap (P27) mating threads. In the application of this switching device to the end effector, the rotation of Pinion 1 (P38) is transmitted to lower link rotation, while the rotation of Pinion 2 (P37) is Chapter 3. The Design and Construction of a Robot Gripper 24 transmitted to upper link rotation. Identical mechanisms are used for the left and right fingers, and each finger operates independantly. 3.4 Mechanical Design of the Gripper [Please refer to the Plates and Drawings section of this thesis] 3.4.1 General Layout The mechanical design layout is shown in Plates 1 to 8. Two stepper motors (P44) are fixed to the motor support (P36) which attaches to the bottom part of the base plate (PI). All other parts fit neatly onto the base plate and are described below. Since the two fingers are independant and operate in the same manner, only the operation of the right-hand finger is described in this section. The axle (P22) of the friction switching mechanism is rigidly fixed to a bracket (P30) which fits vertically inside a slot in the base plate. All pivot shafts also fit vertically into the base plate as shown. These are the shafts for Pinion 1 sub-assembly (Al), Pinion 2 sub-assembly (A2), Idler sub-assembly (A3) and Pivot 1 sub-assembly (A4). These sub-assemblies, as well as Pivot 2 sub-assembly (A5), are shown separately in Plates 4, 5, 6, 7 and 8. (The way in which the two jaws, P18 and P19, fit into their respective pivots is illustrated in Plates 7 and 8.) A second bracket (P32) offers support to the screw cap shank (P28) and helps maintain alignment of the parts which lie between the motor shaft and the screw bearing rod. Both brackets, P30 and P32, are rigidly fixed to the base plate by means of supporting blocks P31 and P33 respectively. A limit block (P34) is fixed at the top right-hand corner of the base plate and is adjustable laterally. The position of this block determines the starting position (or open setting) of the lower link. Chapter 3. The Design and Construction of a Robot Gripper 25 A plexiglass cover fits over the top of the assemblies. This cover serves three pur-poses. First, it helps maintain alignment of the pivot shafts. Second, it helps protect the mechanisms from entry of foreign material and from sustaining damage. Third, since it is transparent, the cover allows for easy viewing and monitoring of the switching and linkage mechanisms while the gripper is in operation. 3.4.2 Motion Transmission All cable linkages are affected by means of a tandem of cables attached to the pulleys. The manner in which all motion is transmitted is illustrated in Plates 1 to 8 and the accompanying parts descriptions. Part drawing P2 (base plate) shows that slots in the plate allow for pitch distance adjustment of the two pinion assemblies (Al and A2), and for timing belt tension adjustment by setting the position of the idler shaft assembly A3. 3.5 Drive and Control System Design 3.5.1 Actuation Two 5W stepper motors (Superior Electric model MO61-CE08) were selected as actuators for the gripper. Each motor operates as a motion source and is controlled through an indexer/drive module. Although the two motors are identical, the two indexer/drive modules that were available for use on this project are not. Different strategies therefore had to be adopted to operate the two motors. The two indexers are shown in Figure 3.6. Motor 1 Actuation The indexer used for Motor 1 actuation (Superior Electric model 230-IH) is programmable, and programs can be downloaded from a host IBM/PS2 computer through a serial link. Chapter 3. The Design and Construction of a Robot Gripper 26 Figure 3.6: Indexers 1 and 2. The indexer is capable of accepting a wide range of commands that instruct it to set or vary certain basic parameters (e.g. acceleration rate), execute a specific action (e.g. start to rotate CCW in high speed mode), or commence execution of a whole series of preprogrammed actions. Operation of Motor 1 through this indexer consists of downloading the desired settings to the indexer before motor actuation and then controlling the motor (essentially start or stop) through direct communication from the host computer. Motor 2 Actuation The indexer used for Motor 2 actuation (Superior Electric model 430-TOH) is not pro-grammable, and motion parameters are set using four potentiometers located on the indexer board. Operation of Motor 2 through this indexer consists of directing specific five-bit control signals from a digital I/O port in the host computer. Chapter 3. The Design and Construction of a Robot Gripper 27 3.5.2 Sensing and Feedback The general control system makes use of three sensing devices for its operation. The first is sensing of the resistant torque opposing rotation of the lower link, which causes switching over of the drive. This capability is an integral characteristic of the switching unit and provisions for varying the switching torque threshold are incorporated in its design. The second sensing capability available is from a linear force sensing strip that is distributed over the entire tactile surface of each of the upper links. The sensors can provide information about the magnitude and location of the contact forces, and are used to provide a feedback signal to stop motor actuation when a preset threshold force (torque) magnitude is reached. The third sensing capability is from a limit switch located at the aluminium bracket below each of the friction switches. An open circuit is shorted by the friction switching mechanism when the finger reaches fully-open position at the end of the opening sequence. Figure 3.7 shows the installed force sensing strip on the upper link of the right-hand finger. 3.5.3 Circuit Design The electrical circuit used for the hand is shown in Drawing XIII. Motor 1, driven by Indexer 1, is controlled directly through the serial port of the host computer through appropriate software (ref. Section 3.5.4). Motor 2, driven by Indexer 2, is controlled through the digital output port of a PCL812 data acquisition board installed in the host computer. Pin descriptions for this connection are given in Table 3.1. The inputs from the pressure sensors on the upper links are compared to a preset threshold setting and the signals are fed to the digital input port of the data acquisition board. The threshold is set by means of a 10.K potentiometer. The signals from the Chapter 3. The Design and Construction of a Robot Gripper 28 Figure 3.7: Linear Force Sensing Strip on Outer Link. Dig. Out. Indexer Function 1 1 All Windings Off 2 2 c w / c c w 3 6 Run 4 9 Half/Full 5 14 Base Speed Only Table 3.1: Pin Descriptions: Digital Output Chapter 3. The Design and Construction of a Robot Gripper 29 Dig. In. Sensory Input 1 Finger 1 Pressure Sensor 2 Finger 2 Pressure Sensor 3 Finger 1 Limit Switch 4 Finger 2 Limit Switch Table 3.2: Pin Descriptions: Digital Input limit switches, which indicate fully-open configuration of the hand, are also fed to this port. Pin descriptions for the digital input port connections are given in Table 3.2. Further details regarding the hardware used in the circuit can be found in Appendix A. 3.5.4 An Integrated Control Program The program CONTROL.BAS, written in BASIC, that controls operation of the gripper is included in Appendix A. The program listing is well annotated, however a description of the various sections of the program is given below. Load PCL812 Basic Driver This section consists of initialization procedures re-quired by the PCL812 data acquisition board driver, and of loading of the driver software 812BAS.BIN. Start-Up The first part of this section displays the operation options menu on the computer monitor. The option indicator Mand exit indicator Z are set to zero, while the Chapter 3. The Design and Construction of a Robot Gripper 30 digital input indicator F is set to 255, which indicates a fully-open hand configuration with no contact signal from the upper link pressure sensors. When option selection is made, option indicator Mis set appropriately, and the appropriate subroutines are called to initialize indexer communication. Unless Option 4 (Exit Program) has been selected, motor operating instructions are displayed on the screen. Commands to Close Fingers This part of the program awaits depression of the spacebar to start the closing motions of the appropriate motor(s). When the spacebar is pressed, if Motor 2 has been selected, the appropriate signal is written to the digital output of the data acquisition board by means of the Write Digital Output using Func 21 routine. If Motor 1 has been selected the H07 command, which initiates counterclockwise rotation of the motor, is written to the serial port of the host computer. The 4000-step delay routine is inserted here for synchronization with Motor 2 rotation, since Indexer 2 is slow to respond to the signal from the data acquisition board. The variable 01, when set to 1, indicates that Motor 1 is in motion. If Z is pressed in place of the spacebar, control is transferred to the Program Ter-mination part of the program. If R is pressed instead of Z or the spacebar, control is transferred to the Commands to Open Fingers part of the program. Stop Closing of Fingers The fingers will stop closing either if the spacebar is pressed once more or if the upper link force sensors are triggered by contact of the link(s) with the object. The spacebar stops both motors simultaneously, whereas either of the force sensors, when triggered, will only stop the appropriate motor. The digital input port is first read through the appropriate subroutine. If Finger 1 and/or Finger 2 contact is indicated, the appropriate motors are stopped. When both motors are stationary, control is transferred to the Commands to Open Fingers section of the program. Pressing the spacebar at any stage will stop both motors. Commands to Open Fingers This section is identical to the Commands to Close Chapter 3. The Design and Construction o f a Robot Gripper 31 Fingers section, except that the motors are instructed to rotate in the opposite direction. Stop Opening of Fingers This section is identical to the Stop Closing of Fingers section, except that the signals awaited from the digital input correspond to the "finger fully-open" rather than "finger contact" situations. When both fingers are stationary, control is transferred to the Commands to Close Fingers section of the program. Program Termination If exit to the main menu has been selected, both motor windings are turned off to conserve indexer and motor life. In the case of Indexer 1 this is done by programming the appropriate G-command into the indexer and running the indexer program cycle, since there is no equivalent direct /f-command to power down the windings (ref. Indexer 230-IH manual). Indexer Initialization Subroutines The first of these subroutines sets up Indexer 1 for control. It is divided into two sections. The first section loads a set of predetermined parameters into the indexer (e.g. motor acceleration/deceleration rates, motor speed) and prints the values on the computer monitor. The parameters are read from data file PARAM.DAT. This routine section is adapted from Program Listing 2 in the indexer manual. The data in PARAM.DAT can be edited as desired. The second section of this subroutine sets up for interactive communication between the host and indexer. The first portion is adapted from Program Listing 3 in the indexer manual. The All Windings Off mode is cancelled by reprogramming the indexer and running the program cycle, and Jog Mode is set, in order to prepare the motor for rotation. The second subroutine sets up Indexer 2 for control. Information about indexer parameter settings is first printed on the screen. The PCL812 driver is then initialized, and Motor 2 windings are turned on. It should be noted that the driver must be initialized even if only Finger 1 operation has been selected, since sensor input must be read through the data acquisition board. In this case, Motor 2 windings are not turned on. Chapter 3. The Design and Construction of a Robot Gripper 32 Write Digital Data using Func 21 This routine writes a digital output, represented in decimal form by the variable DAT, to the digital output port of the data acquisition board. Read Digital Data using Func 22 This routine reads digital data from the digital input port of the data acquisition board. The digital input indicator variable F is set to the value which is read. 3.6 Manufacture The prototype was manufactured to the specifications described in Sections 3.3 and 3.4, and referenced plates and drawings, in the Mechanical Engineering workshops of the University of British Columbia over a three week period in June 1990. Construction of the electrical circuitry and completion of the programming software, required for drive and control of the gripper as described in Section 3.5, were affected in the UBC Laboratory of Industrial Automation. The gripper and its constituent parts are illustrated in Plates 1 to 8 and Drawings I to XIII. Specifications of the finished product are given in Appendix A. 3.7 Description of Operation The typical grasping process attainable using this gripper is shown schematically in Figure 3.8 The object to be grasped is placed initially within the grasp space of the gripper. When the motors are first actuated, the friction switching mechanism directs the output to the lower links, and these start to close towards the object, until one of these links contacts the object (Figure 3.8(a)). If object inertia and surface frictional forces do not cause switch-over of the contacted finger drive to occur, the lower links continue to Chapter 3. The Design and Construction of a Robot Gripper 33 Figure 3.8: Schematic Representation of a Typical Gripping Process. Chapter 3. The Design and Construction of a Robot Gripper 34 close and the object is propelled towards the second lower link until second contact is achieved (Figure 3.8(b)). If certain conditions are met (ref. Chapter 4) the contact forces that build up on the lower links cause the two actuator drives to switch to the respective upper links, and these will start to close towards the object until third contact is achieved (Figure 3.8(c)). At this stage the force-sensing strip on the contacted upper link sends a feedback signal which terminates rotation of the associated motor drive (motor windings, however, remain energised). Meanwhile the second upper link maintains its rotation towards the object until fourth contact, and a successful form closure grasp, are achieved (Figure 3.8(d)), and rotation of the second motor also stops. When the motors are reactivated, through the host computer, the two lower links start to open first until they hit their respective end stops and are physically constrained from moving any further. The motor drives then switch to the respective upper links, which open until the feedback signals from the screw caps (ref. Section 3.5.2) cause shutdown of the motors. The gripper in open and closed configurations is shown in Figures 3.9 and 3.10. Link contact sequences other than that shown in Figure 3.8 are of course also possible, and much depends on the size and initial position of the object and on various other parameters, such as friction conditions and link speeds. These parameters are analysed in Chapters 4 and 5, confirmed experimentally in Chapters 7 and 8, and further discussed in Chapter 9 in the context of a grasping dexterity analysis. 3.8 Design Features The robotic end effector described in this chapter exhibits the following distinctive fea-tures: Figure 3.10: The Gripper in Closed Configuration. Chapter 3. The Design and Construction of a Robot Gripper 36 1. The gripper can conform to different shapes and sizes of object, and does so using a lesser number of actuators than it has degrees of freedom. The main objectives as outlined in Chapter 1 have thus been realised. 2. Due to the simplicity of the design concept, the gripper is very light, compact and inexpensive. Maintenance requirements and problems are potentially almost non-existant, and the system is therefore very reliable. Robustness is another advantage provided by this design concept. 3. The design is modular in nature, and the constituent modules can be easily re-moved and disassembled. The design also incorporates a wide range of setting and adjustment provisions. 4. Velocity reduction between the motor shaft and the link joints is inherent in the design, due to the worm-and-wheel and rack-and-pinion transmissions. In partic-ular, the transmissions also have the capability of retaining a holding torque once the drive system is switched off. 5. The drive and control systems used for this gripper allow for a wide flexibility of experimentation. In particular, • motor accelerations, decelerations and speeds can be varied. • Drive switch-over and motor-off torque and force limits can be varied. • The two fingers, including actuating drives and transmission mechanisms, are entirely independant systems, and the gripper can be operated with any com-bination of non-symmetric parameter settings between the two fingers. The software also provides an option for actuating only one motor at a time. Chapter 3. The Design and Construction of a Robot Gripper 37 6. The control software is very user-friendly. In particular, the options and instructions for operation are clearly displayed on the host computer monitor and the closing and opening sequences of the gripper can be affected using only the spacebar on the computer keyboard. 7. The control software incorporates a number of component protection and compo-nent life conservation features. These include the following: • Return to Main Menu and Motor Direction Change commands are only ac-cepted when the motors are stationary, thus ensuring that immediate control of motor operation (in particular, the ability to stop the motors using the spacebar) can never be lost. • The Return to Main Menu option causes de-energization of all motor windings, thus contributing towards conservation of motor and indexer life. 8. The gripper makes use of a novel friction-switching device for its operation. The device has therefore been tested in an actual application and has proven to be effective. The switching concept can theoretically be extended to three or more joints per actuator, and the mechanism for a three joint configuration is illustrated in Figure 3.11. 3.9 Design Limitations - Discussion As does any new prototype, the gripper in its present design status still exhibits a number of limitations during its operation. These are listed and discussed below. Chapter 3. The Design and Construction of a Robot Gripper 38 Torque to Joint 1. Pinion 1. Mating screw threads (friction = F\). Splined shaft conn ection. Mating screw threads (friction = F2) • Splined shaft connection. Coupling to motor shaft. Screw thread. Torque to Joint 2. Pinion 2 Horizontal grooves. Torque to Joint S. Pinion S. Horizontal grooves. Figure 3.11: Friction Switch for a Three Joint Configuration. Chapter 3. The Design and Construction of a Robot Gripper 39 Friction-Switching Mechanism - Limitations and Suggested Improvements The friction-switching mechanism in its present design state has exhibited two faults in its operation which elicit some discussion. The first problem is caused by the worm and wheel mechanism that is used in the present prototypes. When the physical constraining of Pinion 1 rotation stops the screw from rotating (ref. Figure 3.5), there is a tightening effect between these two components. In subsequent operation of the mechanism, the mating thread friction between the screw and the screw cap may sometimes not offer sufficient torque to untighten the screw, and this results in the drive being switched prematurely to Pinion 2. One solution to this problem may be to replace the worm and wheel mechanism by a simple spur gear transmission or by a bevel gear transmission. Such a replacement however would result in loss of the torque retention properties that are inherent in the worm and wheel transmission (i.e. holding torque on the lower links would be lost after the motors were switched off). Selection of a worm and wheel mechanism with a larger lead angle would alleviate the problem and very possibly eliminate it altogether. The second irregularity that has emerged is in the screw friction adjustment mech-anism (ref. Drawing I). For a given setting (position) of the tapered plug, the screw friction is not constant over the entire range of travel of the screw cap along the screw. Although this fault has not caused undue problems in the operation of the gripper, a partial solution to the anomaly would be to modify the screw cap (P27) such that the internal thread extends down to the bottom of its inside wall, and to modify the screw (P24) such that only part of the lower end of its outside wall has an external thread. The new configuration is illustrated in Figure 3.12. It is also very important that both threads in the mating pair be machined to very close tolerances. Chapter 3. The Design and Construction of a Robot Gripper 40 Figure 3.12: Redesigned Screw and Screw Cap (Sectional View). Coupling between Link Motions The motions of the lower and upper links are not completely decoupled in the present design. During rotation of the lower link, there is a rotation of the idler pulley P14 on Pivot 1 relative to the link, and this results in a change in the angle between the two links at the upper joint (i.e. effectively, while the lower link is closing, the upper link undergoes an opening rotation). When the drive switches to the upper link, no further coupling occurs, and the links close normally around the object. This has not caused any deterioration in the grasping capability of the gripper, other than a slight increase in the grasping time. Rectification of this "defect" would require total redesign of the motion transmission system to the upper link. Chapter 3. The Design and Construction of a Robot Gripper 41 Cable Tension Adjustment Some problems were encountered in achieving correct cable tensions in the cable trans-missions. The design in its present state does not provide for very easy adjustment of the cable tensions, and the required tensions were obtained by carefully cutting all cables to as close to the correct length as possible. Inaccuracy has resulted in some backlash being exhibited during gripper operation, when the direction of motion is reversed. Chapter 4 Analysis of the Planar Grasping Process 4.1 Introduction As indicated in the Literature Review (Chapter 2), a number of different approaches have been taken to analyse grasping. The choice of approach depends upon many factors, such as type of hand, type of object, the stage and/or property of the grasp being investigated, and assumptions made. This chapter presents an analysis of the planar grasping process of an object using a gripper of the type described in Chapter 3, and the analysis is then extended to different and more complex grippers. Due to the nature of this problem, an analytical approach based on vector algebra and newtonian mechanics has been taken. 4.2 Overview In all subsequent analysis, the object to be grasped is approximated to a cylindrical shape, and stands vertically on a flat horizontal surface. Figure 4.13 provides a plan view of an object placed within the grasp space of the open hand, before the grasping process is initiated. When the hand motors are switched on, a grasping sequence similar to that illustrated in Figure 3.8 in Chapter 3 will occur. The parameters which are taken into account in this analysis are described below, and are shown in Figure 4.13. Link and Palm Dimensions The dimensional ratios of the hand {LA, LB, LC, LD, P, T\, T2) are expected to have a major bearing on the grasp dynamics, and on 42 Chapter 4. Analysis of the Planar Grasping Process Figure 4.13: Parameters affecting the Grasping Process. Chapter 4. Analysis of the Planar Grasping Process 44 whether or not a grasp will be successful. Initial Link Angles The lower link initial angles (0:4(0), ae(0)) will mainly affect the maximum size of object graspable and the time taken to achieve the grasp. The upper link initial angles (ac(0), arj(O)) are expected to have a significant influence on whether or not a successful grasp is achieved. Motor Speeds, No. of Teeth of Gears (not shown in figure) These parameters will determine the link speeds uJA,u>B)UJc,Li>D- These will determine the time taken for the links to close around the object. The link speeds will also determine centrifugal forces and link contact forces acting on the object during specific phases of the grasping process. Thread Torques, Link Force Limits The thread switching torques TT\ and TT2 (not shown in figure) will determine the threshold torques FT\ and F?2 at the lower joints, whereas Fjvc'(^ m) and F^c(lJm) are the outer link normal contact force limits which will cause shutdown of the motors. These parameters will determine the magnitides of contact forces acting on the object. Object Radius and Object Mass Object radius R and mass m are expected to sig-nificantly affect the dynamics of object movement during the grasping process. Object Initial Position Coordinates The initial position of the object (x,y) will clearly affect the manner in which the grasp will progress. Friction Coefficients The friction coefficient between the object and the supporting surface, p$, 1S expected to affect the grasp dynamics since during certain phases of the grasping process the object will be pushed by the link(s) across the supporting surface under the influence of friction. The friction coefficient between the object Chapter 4. Analysis of the Planar Grasping Process 45 and link, fi^, is expected to have significant influence on the prospect of achieving a successful grasp. The following analysis covers all the possible ways in which the links may contact the object (e.g. combinations of link contacts, order of link contacts) for any set of the parameters listed above. In Section 4.6 it is extended to grasping by a 6-dof gripper (3 links/finger) and to grasping by 4- and 6-dof grippers with simultaneous, rather than sequential, motion of the links. The analysis is later used as a basis for a number of simulation programs, described in Chapter 6, which are intended for a more detailed study of the effects of all the parameters on grasp outcome. Assumptions The analysis is based on the following three assumptions: 1. Object and links are rigid structures. This assumption does not cause significant errors in the determination of the final outcome of the grasp (i.e. whether or not a grasp is successful, and final position of the object). 2. Motors are sources of constant motion. Since the motors used in the prototype, described in Chapter 3, are stepper motors, this assumption is valid during steady state motion if no motor steps are missed. 3. Contact bounce is neglected. This assumption is also valid under the conditions that prevail during the grasping process. In particular, link angular speeds are small, and rubber pads on the link contact surfaces, as well as friction between the object and the supporting surface, will tend to dampen the impact response characteristics. Chapter 4. Analysis of the Planar Grasping Process 46 / Figure 4.14: Position and Velocity vectors: single contact, lower link. The main implication of these assumptions is that the object will exhibit sudden changes in velocity between different phases of the grasp, when the number of contacted links changes. These assumptions are further discussed in Section 4.7. 4.3 One-Link Contact Analysis The equations for single object contact with a lower and an upper link are derived in Sections 4.3.1 and 4.3.2 respectively. In both cases, the analysis is given for contact with the links on the right-hand finger. The equations for single contact with the left-hand finger links are similar. 4.3.1 Contact with the Lower Link In Figure 4.14, Chapter 4. Analysis of the Planar Grasping Process +ve<3 m{2uAlA - Ru,.) Figure 4.15: Force Equilibrium Diagram for Case ] p = v = [lA- u>A(R + Ti)]it + [ujAlA]ic P = a={CA- u2AlA]ii + [2uAl'A -(R + T^uWQ From Equation 4.2, ibA — arctan lA-wA{R + Tx) wAlA Case 1: No Slip at Object-Link Contact Point Derivation of equations of motion Transverse equation: FNA ~ FFK cos ipA = 2muAlA - mu2A(R + Ii) Chapter 4. Analysis of the Planar Grasping Process 48 Radial equation: mu)2AlA - Ffk sin ibA = mlA — + (4.6) The following points should be noted with respect to Figure 4.15 and Equation 4.6: 1. The negative sign before the 6 term is due to the direction of rotation of the object. 2. The inertia torque {~m^B) and frictional torque (Tfk), resisting rotation of the ob-ject, manifest themselves as forces of ~™R e and ^  acting in the positive ii direction at the point of contact between the link and the object. These are equivalent to forces of ~™R e and ^ resisting motion at the object centroid. The relationship between lA and 6 is derived in Figure 4.16. The link and object movements are shown in two steps (these steps actually occur simultaneously). In Step 1, the object rolls a distance AlA up the link, and rotates through an angle 6' (— ^f4-). In Step 2 the link rotates through an angle ActA {— uAAt) with no relative movement between the object and the link. The net change in angular position of the object relative to the flat surface is given by -6 = 6'- AaA = ^-~ uAAt R or -R6 = AlA - RxvAAt The distance lA is therefore given by lA = lA(0) + R(uAtA - 6) (4.7) where lA(0) is the initial value of lA when contact is first made and tA is the time from initial contact. Figure 4.16: Link and Object Movements during One-Link Contact. Thus lA = R(UJA - 6) and IA = -R6 By substituting Equation 4.9 into Equation 4.6, the radial equation becomes mu,2AlA-FJksmxhA = -^. — (4.10) Object Centroid Position and Velocity In the X-Y reference frame, object position and velocity coordinates are given by: x = xA + lA cosctA — (R + Ti) sin aA (4.11) (4.8) (4.9) V = VA + U sin ctA + (R + Tj) cos aA (4.12) Chapter 4. Analysis of the Planar Grasping Process 50 Figure 4.17: Velocity of Contact Point: single contact, lower link. i = [IA — {R + Ti)u>A] cos C*A — WAIA sin CLA (4.13) V = [IA~(R + TI)WA] smaA + uAlA cos aA (4.14) Object Initial Velocities The point of contact between link and object has a velocity Vp as shown in Figure 4.17. Thus for the no-slip condition, the object is assumed to have the following initial velocities at the instance of first contact. i) An angular velocity of — VR -Vpsina 0// 0(0) R R (4.15) ii) A linear velocity of = [ Vp sin aoff]ii + [ Vp cos aof f]ic (4.16) Chapter 4. Analysis of the Planar Grasping Process 51 Figure 4.18: Force Equilibrium Diagram for Case 2. With reference to Figure 4.17, the variables on the right hand side of Equations 4.15 and 4.16 are given by: Vp = uiAL (4.17) L = JPA + T? (4.18) and ct0ff = arctan — (4.19) Case 2: Slip at Object-Link Contact Point This situation will occur if R 2 (4.20) Chapter 4. Analysis of the Planar Grasping Process 52 When there is slip at the link, lA and 0 become independant of each other, and the tangential contact force FCA becomes a function of FNA only, i.e. FCA = HLkFNA (4.21) Equation 4.5 is still valid, however the radial equation of motion is now: mu)2AlA - Ffk sin tpA = mlA + u.LkFNA (4.22) Angular acceleration is given by: HLkfNA g "ft" (4.23) Equations 4.11 to 4.14 for centroid position and velocity are still valid in this case, however the initial angular velocity of the object is zero. 4.3.2 Contact with the Upper Link In Figure 4.19 p = LA + lc + fx + R = [LA cos ac + lc}?i + [R + T! - LA sin ctc]Cc (4.24) p — [Ic + uA(LA sin etc — R — Ti)]ii + [LUa(Ic + LA cos ac))ia (4.25) p=[lc- u>A(lc + LA cos ac)]ii + [2uAlc + u\{LA sina c - R - Ti)\ia (4.26) From Equation 4.25 Chapter 4. Analysis of the Planar Grasping Process 53 (*c,yc) Figure 4.19: Position and Velocity vectors: single contact, upper link. tpc — arctan [IC+UJA(LA s i n a c - f l - T O ] [UA{IC + LA cos ac)] (4.27) Case 1: No Slip at Object-Link Contact Point Equations of motion Equations 4.28 and 4.29 are derived in a manner similar to that shown in Section 4.3.1 for single contact with the lower link. Transverse equation: FNC — Ffk cos ipc = 2mwAlc + muj2A(LA sin ctc — R — Tx) (4.28) Radial equation: muJA(lc + Z^cosctc) - Ffksmibc = - 5 -Tfk ZrnRO R~ (4.29) Chapter 4. Analysis of the Planar Grasping Process 54 Object Centroid Position and Velocity In the X-Y reference frame, object position and velocity coordinates are given by: x = xc + lc cos (ctA + otc) - (R + T1)s'm(aA + etc) (4.30) V = yc + lc sin (CM + ctc) + (R + T^cos (aA + ctc) (4-31) x = [lc + UJa(LA sin a c - R - Tx)} cos (aA + ac) - [uA(lc + LA cosac)] sin (aA + ac) (4.32) y = [lc + OJa(La smac - R - Tx)) sin (aA + ac) + [uA(lc + LA cos ac)] cos(a^ + ac) (4.33) Object Initial Velocities With reference to Figure 4.20, object initial velocities are given by: HO) = = zMpil (4.34) ^( ° ) = [^ps in7o//]i/ + [Vpcos^off]ia (4.35) where Vp = u>AL Case 2: Slip at Object-Link Contact Point This situation will occur if Chapter 4. Analysis of the Planar Grasping Process 55 Tfk mRO -f~ — > I-^NC (4.36) This situation is similar to that described in Section 4.3.1 for single contact with the lower link (Case 2). Thus the tangential contact force is given by Fee = ^ Lk FNC (4.37) Equation 4.28 is still valid here, however the radial equation of motion becomes mu)A{lc + LA cos a c ) - Ffksmtjjc — ~nlc + MLfc-PVc (4.38) Angular acceleration is given by HLkFNc = — + ~f (4.39) Chapter 4. Analysis of the Planar Grasping Process 56 x 1 X V ^ Firmer 1 i \ \ N . \ Finger 2 «2 Figure 4.21: Angles of Force for Polygon in Equilibrium. 4.4 Two-Link Contact Analysis 4.4.1 Graspability The graspability condition for a 2-dimensional object by two fingers is derived in [16], and is illustrated by Figure 4.21. In the figure, A and B are the two contact points between the fingers and the object, and ct\ and a2 are the angles of the contact forces with the respective link normals. Since the grasped object is in equilibrium, the contact forces must be colinear and equal. It is shown in [16] that for stability of the grasp, W < 2|A| (4.40) where ib is the angle between the two contact normals and A is the friction angle at the contact points. In the present study, the condition expressed in 4.40 is used to test for stability of two-link contact situations. An additional force, namely the frictional force exerted by the supporting surface, is also taken into consideration since it contributes towards stability of the grasp. The forces acting when Condition 4.40 is not satisfied, for contact with the Chapter 4. Analysis of the Planar Grasping Process 57 \ i Figure 4.22: Limiting Condition for Object Slip. two lower links, are shown in Figure 4.22. By symmetry, FpfA = F^B- Thus if Hsmg > 2FNA sin — - 2u-LFNA cos — (4-41) the object will not slide up the links. 4.4.2 Object Slip If both conditions 4.40 and 4.41 are not met, then the object will slide outwards along the links. Since contact forces and friction coefficients are equal on both links, there can be no bias towards either link, and there will therefore always be slip of the object at both links. The situation also implies that there will be no rotation of the object during its motion along the links. Distinction must be made between the two possible configurations of the non-form closure grasps, as will be explained below. Chapter 4. Analysis of the Planar Grasping Process 58 Figure 4.23: Object Slip: Configuration 1 Grasp. Configuration 1 Grasps A Configuration 1 grasp is one that tends to squeeze the object out of the grasp. For the two-link contact situation with the lower links, this is defined by cts > CXA arid is shown in Figure 4.23. Since the links move with constant angular velocities, the position, velocity and acceleration of the object are geometrically defined if contact with the two links is to be maintained. The equation of motion of the object centroid is therefore FNA sin (<f> - ctA) + FNB sin (aB -</>)- ^ FNA COS - aA) - PLICFNB COS (aB - <f>) = mi) + FFK (4.42) where FNA = FNB-Since the object and links are assumed to be rigid, the initial acceleration of the object would theoretically be infinite. In a numerical simulation based on this analysis, the velocity of the object, during the first time increment, can be assumed to change linearly from zero to the average first increment speed during the first half of the increment, as shown in Figure 4.24. Chapter 4. Analysis of the Planar Grasping Process 59 0 2 4 6 no. of time increments. Figure 4.24: Change of Object Centroid Velocity with Time (numerical). In many cases, when one of the outer links is involved, the high initial acceleration of the object as it starts to slide out of the grasp may cause normal contact forces to exceed the preset force limits on the link(s), causing shutdown of one or both of the motors. In this situation, although the object may have stopped sliding, the grasp is still considered to be unsuccessful. Configuration 2 Grasps A Configuration 2 grasp is one that tends to squeeze the object into the grasp. For the two-link contact situation with the two lower links, this is defined by aB < OLA and is shown in Figure 4.25. The equation of motion of the object here becomes FNAs'm((f> - aA) + FNBsm(aB - <j>) + PLUFNA cos(</> - aA) + PLkFNB cos(aB - <t>) = mv+Ffk (4.43) where FNA = FNB. Equation 4.43 is applicable to the first time increment of a numerical simulation under Chapter 4. Analysis of the Planar Grasping Process 60 Figure 4.25: Object Slip: Coniguration 2 Grasp. the same conditions described for Configuration 1. For subsequent time increments the term mv is dropped since object motion will undergo deceleration under the influence of the surface friction Ffk. 4.5 Three- and Four-Link Contact Analysis 4.5.1 Form Closure Check A grasp with three or more links has translational form closure if all adjacent pairs of contact forces are at an angle of less than 7r to each other. In Figure 4.26, B\ < ir, 62 < 71 and 63 < 7T, so translational form closure has been achieved. The form closure is referred to as translational since a circular object can never have full form closure since an external moment about its centre can never be geometrically constrained. Since the object and links are assumed to be rigid in this analysis, all contact forces in a form closure grasp are assumed to be equal. Chapter 4. Analysis of the Planar Grasping Process 61 Figure 4.26: A Translational Form Closure Grasp. 4.5.2 Grasp Stability Check If there is no translational form closure in a grasp where three or more links are involved, then the pair of adjacent links that subtend an angle B which is greater than 7r are termed the "outer" links. A grasping stability check similar to that described in Section 4.4.1 can be applied to these links (ref. Figure 4.27). For a stable grasp, the normal contact forces at the two "outer" link contact points are equal, whereas the contact forces at all other links are equal to zero. 4.6 Additional Analysis for Other Types of Hands 4.6.1 6-dof Gripper with Sequential Link Motion In order to simulate the grasping process by a 6-dof gripper (2 fingers, 3 links per finger), a much larger number of link contact sequences and combinations require consideration than in the case of a 4-dof gripper. Most of the analysis, however, (e.g. form closure checks, grasp stability checks) is identical to that applied to the 4-dof gripper. Some Chapter 4. Analysis of the Planar Grasping Process 62 Figure 4.27: The "Outer" Links in a Multi-Link Grasp. additional analysis is required for the one-link contact situation with the outermost link, and this is given below. Contact with the Outer Link In Figure 4.28 p = LA-r Lc + / B + Ti + R = [LA COS (Q.C + ctE) + Lc cos ctE + IE\H •+[R + Tx - LA sin (ctc + ctE) - Lc sin aE]i0 (4.44) p = [h + wA{LA sin (ctc + ctE) + Lc sin aE - R - Ta)]z; + [ ^ ( ^ 7 + ^ c o s ( a c + "is) + Lc cos afi)]za = + vaia , say (4.45) Chapter 4. Analysis of the Planar Grasping Process 63 Figure 4.28: Position and Velocity vectors: single contact, outer link. Chapter 4. Analysis of the Planar Grasping Process 64 p — [lE - uA(lE + LA COS (ct c + ctE) + Lc cos ctE)]ii + [2uAlE + UJ2A(LA sin (a c + ctE) + Lc sin ctE — R — Ti)]za = a,i,+ a az a ,say (4.46) From Equation 4.45 ibE = arctan — (4-47) va Case 1: No Slip at Object-Link Contact Point Equations of motion Equations 4.48 and 4.49 are derived in a manner similar to that shown in Section 4.3.1 for single contact with the lower link. Transverse equation: FNE ~ Ffk cos ibE = maa (4.48) where F^E is the normal contact force on Link E. Radial equation: mujA(lE + LA cos(ac + aE) + Lc cosaE) - Ffk s'mibE = — (4.49) Object Centroid Position and Velocity In the X-Y reference frame, object position and velocity coordinates are given by: x = xE + lE cos (aA + ctc + ctE) — (R + Ti) sin(a^ + ac + aE) (4.50) Chapter 4. Analysis of the Planar Grasping Process 65 V = VE + lEsm(ctA + ctc + OLE) + (-K + 2 i ) cos(aA + a c + a B) (4-51) i = [IE + ^A(LA sin (ctc + ctE) + LC sinaE - R - Ti)} cos (ctA + ctc + ctE) -[UJa(IE + LA cos (ctc + a E ) + LC cosaE}sin (aA + a c + ctE) (4.52) j/ = [lE + uA(L A sin ( a c + a E ) + Lcs'maE - R-Tx)} sin (aA + a c + a E ) + [I~>A(IE + LA cos (ctc + <*E) + LC cos aE] cos (a^ + a c + a E ) (4.53) Object Initial Velocities With reference to Figure 4.29, object initial velocities are given by: —VR —Vvsme0ff m = ~ir= \  (4-54) v(0) = [Vpsine0//]ij + [VP cos e o f f \ i a (4.55) where VP = UJAL Case 2: Slip at Object-Link Contact Point This situation will occur if Tfk mR6 -f ~ — > VLFNE (4.56) This situation is similar to that described in Section 4.3.1 for single contact with the lower link (Case 2). Thus the tangential contact force is given by FCE = HikFNE (4.57) Figure 4.29: Velocity of Contact Point: single contact, outer link. Chapter 4. Analysis of the Planar Grasping Process 67 Equation 4.48 is still valid here, however the radial equation of motion becomes mcjA(lE + L^cos(a c + ctE) + Lc cos ctE) - FfksmtpE = mlE + pLk^NE (4.58) Angular acceleration is given by mRd Tfk pLkFNE = — + -f (4.59) 4.6.2 4-dof Gripper with Simultaneous Link Motion The analysis of a 4-dof gripper with simultaneous link motion is very similar to that for a gripper with sequential link motion. Once again, some additional analysis is required for the one-link contact situation with the outermost link. Contact with the Upper Link In Figure 4.30 p = LA + lc + T\ + R — [LA COS ac + lc]ii + [R + Ti — LA sin ac]ia (4.60) as in Section 4.3.2. In this case, however, the angle ac is not constant and is given by «c = ctci + wctc (4-61) where aci is the value of ac when contact is first made and tc is the time from the instant of first contact. The velocity and acceleration of the object centroid are therefore given by Chapter 4. Analysis of the Planar Grasping Process 68 (XA,VA) Figure 4.30: Position and Velocity vectors: single contact, upper link. p = [lc + uALA sin ctc - (R + 7\)(^ + UJC)]II + [{uA + uc)lc + uALA cos ac)C (4.62) P - [IC-{UA+Uc)2IC-U2ALA COS ac]ii+[2(uA+uc)lc+vALA sina c-{R-\-Ti)(u}A+0Jc) 2)C (4.63) From Equation 4.62 ipe — arctan [lc + CJALA sin ac - (R + Ti)(u}A + vc)] [(UJA + u)C)lc + UALA COS etc) (4.64) Chapter 4. Analysis of the Planar Grasping Process 69 Case 1: No Slip at Object-Link Contact Point Equations of motion Equations 4.65 and 4.66 are derived in a manner similar to that shown in Section 4.3.1 for single contact with the lower link. Transverse equation: FNC — FFK cosyjc = 2m(uA + uc)lc + muJALA sinctc ~ ~n(R + Ti)(uA + cuc)2 (4.65) Radial equation: . , 1 2 n Tfk 3inR9 m ( u A + u ) C ) lc + rncuALA cosctc - Ffk sin-ipc = — — (4.66) K 1 Object Centroid Position and Velocity The object position coordinates in the X-Y reference frame are given by Equa-tions 4.30 and 4.31 in Section 4.3.2. The velocity coordinates are given by x = [lc + u>ALA sina c - (R + TX)(L>A + UJC)} cos (ctA + ctc) -[(u)A +UJc)IC + u A L A cos etc] sin ( a A + ctc) (4-67) V = [lc + u A L A sina c - (R + Tx)(uA + uc)} sin (ctA + ctc) + [(u>A + u)c)lc + UJALA cosac] cos (ctA + ctc) (4.68) Object Initial Velocities With reference to Figure 4.31, VN = UALI cosctoff + u)CL2 c o s ^ o f f (4.69) Chapter 4. Analysis of the Planar Grasping Process 70 / Figure 4.31: Velocity of Contact Point: single contact, upper link. VR = u)ALX sincto / / - LJCL2 s\n^o}} (4-70) Object initial velocities are given by: 9(0) = (4.71) v(0) = VRC, + VNC (4.72) Case 2: Slip at Object-Link Contact Point The transverse equation 4.65 is still valid in this case, however the radial equation of motion is modified to m(uA +uc)2lc + mujALA cosctc - Ffksmtpc = ™lc + PLkFuc (4-73) Chapter 4. Analysis of the Planar Grasping Process Figure 4.32: Position and Velocity vectors: single contact, outer link. 4.6.3 6-dof Gripper with Simultaneous Link Motion Contact with the Outer Link In Figure 4.32 p = LA + Lc + iE + T\ + R = [LA COS (ctc + ctfi) + Lc cos ctE + lE]it + [R + Ti ~LA sin (ctc + ctE) - Lc sin ctE]ia as in Section 4.6.1. The angles etc and ctE are not constant and are given by Chapter 4. Analysis of the Planar Grasping Process 72 etc = ctC\ + uctE (4-75) and ctE = OLEI + wEtE (4-76) where ctci a n d aEi a r e the values of ac and respectively when contact is first made and IE is the time from the instant of first contact. The velocity and acceleration of the object centroid are therefore given by p = [IE + uA(LA sin (ac + aE) + Lc sin aE) +ujcLc s'maE - (R + Tx)(uA + LOc + uE))ii -r[(uA + uc + WE)IE + wA(LA cos (ac + a B) + Lc cos ajs) -fa;c-Lc cos aE]ia = vji/ + ^a^a , say (4-77) P = [h — {VA + wc + U)E)2IE — uA(LA cos (ac + aE) + Lc cos a f i) — (wc + 2aii4>>c)-kc cosaB]zj + [2(01,4 + + uE)lE + vA(LA sin (ctc + aE) + Lc sin aE) +(cuc + 2u; j 4a; c)/L c sina B - (R + T1)((jI4 + o>c + wE)2]iQ = ajij + aaia , say (4-78) From Equation 4.77 VJE = arctan — (4.79) Chapter 4. Analysis of the Planar Grasping Process 73 Case 1: No Slip at Object-Link Contact Point Equations of motion Equations 4.80 and 4.81 are derived in a manner similar to that shown in Section 4.3.1 for single contact with the lower link. Transverse equation: FNE — Ffk cos yjE = maa (4.80) Radial equation: „ . , Tfk mR6 FfkSmi>E + ^- + mal- — =Q (4.81) Object Centroid Position and Velocity The object position coordinates in the X-Y reference frame are given by Equa-tions 4.50 and 4.51 in Section 4.6.1. The velocity coordinates are given by x = vi cos (aA + ctc + ctE) - vasm (aA + ac + ctE) (4.82) y = vi sin{aA + ctc + ctE) + va cos (ctA + ac + ctE) (4.83) Object Initial Velocities With reference to Figure 4.33, VN = wALx cos ctoff + u>cL2 cos^ff + uEL3 cos e0ff (4.84) VR = UAL\ s\na0ff - LJCL2 sm^off - o;BL3sin eoff Object initial velocities are given by: (4.85) Figure 4.33: Velocity of Contact Point: single contact, outer link. Chapter 4. Analysis of the Planar Grasping Process 75 6(0) -VR (4.86) R v(0) = VRii + VNit a (4.87) Case 2: Slip at Object-Link Contact Point The transverse equation 4.80 is still valid in this case, however the radial equation of motion is modified to 4.7 Discussion The assumptions listed in Section 4.2, and the degree to which they are expected to influence the accuracy of the final results, are discussed below. 4.7.1 Rigidity Since link switch-over torques and outer link force limits are low, flexibility of the links and deformability of the object do not play a significant role in object response during the grasping process, particularly during the one-link-contact stage. This stage is typically the only one where the object exhibits dynamic behavior during a successful grasp. 4.7.2 Constant Motor Motion In this analysis, the motors are considered to be sources of constant motion. As long as load torques do not cause motor steps to be missed, this is a valid assumption for stepper motors; in fact, control systems for stepper motors are very often open loop. Ffk simps + fJ'LkFNB + mai = 0 (4.88) Chapter 4. Analysis of the Planar Grasping Process 76 ref. input Torque Sensor Servo Amplifier Load (Disturbance Torque Input) DC Motor output Tachometer Figure 4.34: Control Scheme for DC Motor Actuated Links. If the link actuators are not velocity sources (e.g. DC servo motors, or pneumatic or hydraulic actuators), a feedback control scheme may need to be implemented to maintain constant velocity output when the load torques vary. A control system for a DC servo motor is shown in Figure 4.34. The system, as shown in the figure, requires velocity feedback of motor output to the controller or servo amplifier. Performance is improved if motor torque sensing is incor-porated in a feedforward path, thus speeding up controller response to load variations. The simplest method to sense torque may be by measurement of motor current (motor current torque sensing), i.e. measurement of armature current (for an armature controlled motor), or measurement of field current (for a field controlled motor). Alternatively, if the links are fitted with force magnitude and position sensing, these signals could be used to compute the motor torque variation during the grasping. A control system of the type described above is particularly important if minimization of grasping time is critical, and if the percentage speed regulation of the motor is high. Chapter 4. Analysis of the Planar Grasping Process 77 4.7.3 Contact Bounce and Object Initial Velocities The assumptions of no contact bounce and non-zero object initial velocities, on initial contact, are congruous with a perfectly plastic impact model of the collision between the moving link and the stationary object. Impact normally consists of a period of deformation of the bodies, at the end of which the two bodies have equal velocities, followed by a period of restitution during which the bodies regain their original shape (or retain some deformation, depending on the materials involved and the magnitude of the impact forces). Bounce is a consequence of this restitution, and the two bodies will typically have different final velocities. A perfectly plastic impact model is justified for the link-object collision in this study for the following reasons. • Since link velocity is assumed constant, the changes in momentum of the object must occur over a period of time which is theoretically infinitely small. The collision must therefore be treated as an impact. • Most of the deformation on impact occurs in the rubber pad which would cover the link contacting surface in an actual gripper. Since rubber has a very low stiffness, the restoring forces after deformation are very low, and do not tend to favour elastic impact characteristics. • The perfectly plastic impact model (i.e. no restitution) is further justified by the fact that link velocities are relatively low (i.e. impact forces are not very high), and also by the contribution of the friction between the object and the supporting surface, which will act towards slowing down the object and thus reducing bounce. Acceleration of the object from rest to final velocity occurs during the period of deformation. The forces acting on the object during this time interval are shown in Figure 4.35. Chapter 4. Analysis of the Planar Grasping Process 78 m6> Tj (coulomb) B{t) \ Ff (coulomb) / JFcdt Figure 4.35: Forces Acting on the Object during the Impact Period. Due to the oblique nature of the impact, there is deformation of the rubber in both the normal and tangential directions, resulting in an impulse / F^dt causing linear accel-eration of the object and an impulse / Fcdt causing angular acceleration of the object. The variations of F^ and Fc over the impact period, and hence the solutions v(t) and 9(t), would require numerical solution (e.g. Finite Element Analysis). Chapter 5 Frictional Effects for Combined Translational and Rotational Motion 5.1 Introduction In Chapter 4, all equations of motion were given in terms of the surface frictional force Ff and the surface frictional torque Tf. Although the values of Ff and Tf for pure translational motion and pure rotational motion respectively are easily calculated using a Coulomb friction model, their values in a situation where there is combined translational and rotational motion require a considerable amount of more in depth analysis in order to be determined. In this chapter, expressions for the frictional force Ff and frictional torque Tf for use in the equations of motion presented in Chapter 4 are derived. 5.2 Previous Work Previous analysis in this area was carried out by Mason in [35], where expressions for the force and moment due to friction with the support during general planar motion are derived. In Figure 5.36, an object is shown in motion on a planar surface. R is the region of contact with the surface, dA is the differential element of area of R, x is the position of dA, p(x) is the pressure at x and v^. is the velocity of the object relative to the supporting surface at x. Coulomb friction, with coefficient of friction fi, is assumed. The normal force at x is given by p(x)dA so that, by Coulomb's law, the tangential force at x is 79 Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 80 v —pf^-rp(x)dA 12x1 The total frictional force / is obtained by integrating over the support contact region R: f = f -u.fZ-p(x)dA (5.89) -f JR I U J Similarly, the total frictional moment my is given by ' mf= [ x6b-u.f^p(x)dA (5.90) where by (a, b)T (S>(c, d)T is meant ad — be. Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 81 Figure 5.37: Cylinder with Combined Linear and Rotational Motion. 5.3 Theorems and Derivations Consider a solid, uniform cylinder which rests on a flat, horizontal surface, such that one of the flat faces of the cylinder is parallel to and in contact with the flat surface. For a linear velocity v of the cylinder longitudinal axis along the surface and a simultaneous angular velocity u of the cylinder about the longitudinal axis (ref. Figure 5.37), the following theorems apply under conditions of uniform dry friction across the area of contact. Theorem 1 (i) 0 < \Ff\ < usmg (5.91) (ii) 0 < |2>1 < \psmgR (5.92) Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 82 Figure 5.38: Elemental Frictional Force, u> — 0 Proof for Theorem 1 (i) When u = 0 (ref. Figure 5.38), the frictional force 8Ff acting on an elemental area 8 A is equal to ^j-u-smg and acts opposite to v. Thus total frictional force Ff is given by Ff = T A = psmg rv (5-93) When u) ^ 0 (ref. Figure 5.39), at any element 8A the magnitude of the frictional force is ^j-psm9 but the direction is at an angle 7 to the direction of —v. Hence the component of 8Ff resisting the motion v is equal to ^psm9 cos 7'. The total frictional force resisting the linear motion of the cylinder is given by Ff = 2-J -^Vsmg cos 7 ^ 8 A < 2^ -^Vsmg = psmg Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 83 Figure 5.39: Elemental Frictional Force, u ^ 0 > ^8A 2^  -jVsmg -psmg Thus, when u ^ 0 (5.94) - psmg < Ff <psmg (5.95) (ii) When v = 0 (ref. Figure 5.40), the frictional torque 5Tf due to friction at the elemental area of contact 8A is equal to r-^^sfng and acts to oppose ui. Thus total frictional torque Tf is given by Tf = ^r—psmg -I R 2irr8r r——nsmg o A fismg R3 = ^ ,R? 3 = ^fismgR (5.96) When (ref. Figure 5.41), the frictional force 8Ff on element 8A makes an angle 6 with the tangential direction. Hence the elemental frictional torque resisting u> is equal Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 84 Figure 5.41: Elemental Frictional Torque, v ^ 0 Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 85 to ^j-psm9r cos ft- The total frictional torque resisting angular motion of the cylinder is given by Tf = Y,r~^f1s'm9 cos ft V- 8 A 2 < l^r—psmg = -psmgR 8 A 2 , > -Z^r~^t1sm9 = --psmgR (5.97) Thus, when v ^  0 2 2 -psmgR < Tf < -usmgR (5.98) Theorem 2 For arbitrary ii, v and (i) ^ = ^ JcflfTOSb|^^ (5-99) (ii) 7) = ^ / „ * t ^Zf-ZLse dd dr (5-10°) In non-dimensional form, Equations 5.99 and 5.100 become (iii) Ff = 2psmg J* J* f [ ^ ' ^ ^ , ] M df (5.101) y l + r V - 2 r v COS 2TT8 (iv) Tf = 2u.smgRti j * f2[ } dd df (5.102) y/1+H vz - 2rv COS 2 iro Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 86 Figure 5.42: Elemental Frictional Force for Combined Translational and Rotational Mo-tion. where v = ^ (5.103) v f = j (5.104) 6 = JL (5.105) Proof for Theorem 2 In Figure 5.42, x = ruj sin 9 v — ruj cos 9 (5.106) (5.107) y v — roj cos 9 tane = — = :—-— x ru> sm 6 (5.108) Chapter 5. Frictional Effects for Combined* Translational and Rotational Motion 87 r / / S*88 Figure 5.43: Elemental Area of Contact. ru sin 8 cos e sin e = */v2 7-2^ ,2 _ 2vru cos 8 v — ru> cos 8 •\/v2 -f- r2u2 — 2vru cos 8 (5.109) (5.110) d = r sin (0 — e) = r sin 0 cos e — r sin e cos 0 (5.111) Figure 5.43 shows the elemental area of contact 8 A. This is given by 8A = r 86 8r (5.112) The elemental mass of the cylinder is given by 8m = phr 88 8r (5.113) where h is the cylinder height and p is the cylinder density. The elemental frictional force is therefore given by 8Ff -- psgt>m — ^sQphr 88 8r (5.114) Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 88 The elemental frictional force component in the x-direction is given by 6Ffx = psgphr cos e 66 8r (5.115) Substituting for cose from Equation 5.109 and integrating for total Ff x-direction component over the area A gives i fR f2~ r2sin# Ffx = Hsgphu / / d0 dr 7o + Har — Ivru cos & = 0 (5.116) The elemental frictional force component in the y-direction is given by 8Ffy = psg^m sine = psgphr sine 86 8r (5.117) Substituting for sine from Equation 5.110 and integrating for total Ff y-direction component over the area A gives /•R [2- rv — r2u cos 6 Ffy = Ff = u.s9Ph y 2 + 2 2 9 d6dr (5.118) Jo Jo y i r -f- r^ur — Zvru> cos o as expressed in Equation 5.99. An expression for Ff in terms of non-dimensional parameters is obtained as follows: Substituting ph = into Equation 5.99 gives F f = ^ ± l R r ™ - r W f l M d r 1 TTR2 JO JO f/v2 + r2u2 - 2vru cos 6 V Substituting for r and v from Equations 5.104 and 5.103 respectively gives „ UsmQ fR t2v fv — f2Ru)cos6 ,„ , Ff = / / , d6 dr 1 itR Jo Jo ?/v2+ f2R2u2 -2vf RUJ cos & psmg fR f2v r — f2v cos 6 TTR JO Jo \/l + r2v2 — 2rv cos 6 dO dr Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 89 Substituting for 8 from Equation 5.105 and replacing dr = R dr and dO = 2ird8 gives 1 — fv cos 2-KO 2psmg [ i Jo Jo v7! + r2v2 — 2rv cos 2ir8 dd df (5.120) as expressed in Equation 5.101. Referring back to Figure 5.42 and picking up the derivation from Equation 5.114 leads to the following expression for elemental frictional torque: STf = u-sgphrd 88 Sr (5.121) Total frictional torque is given by Tf = psgph / / rdd8 dr (5.122) Jo Jo Substituting for d from Equation 5.111 and for cose and sine from Equations 5.109 and 5.110 respectively gives fR [2* r*u — r'v Tf = iisgph / / = Jo Jo V D 2 + r2ui2 — i as expressed in Equation 5.100. Equation 5.100 is non-dimensionalized in a manner identical to Equation 5.99, to give Equation 5.102. -3- • ~ 2.. cos 8 2vru) cos 8 d9 dr (5.123) 5.4 Evaluation of Ff and Tf Analytical integrations of Equations 5.101 and 5.102 with respect to f yield the following expressions: Ff = 2psmg j 1 - - C O S 2 ( 2 7 T ^ ) 2 v ; ^ l + i;2-2i}cos(27r0)- 1 Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 90 + — cos (2TT0) - cos3 COS (2TT0) 2v {2*6)] ln ^/l + v2 - 2ucos(27r0) sjl+v2 - 2i) cos (2TT0) + v - cos (2TT0) 1 - cos (2TT0) de (5.124) Tf = 2psmgR j 2 cos2(27T0) J _ COS(2TT0) | COS2(2TT0) 2 3t> 3i>2 3i)3 \ / l +u 2 - 2UCOS(2TT^) + + 3v3 v3 cos3(2n9) cos(2ir8) ln y/l + v2 - 2v cos (2ir0) + v — cos {2-KO) 1 - COs(27Tf5) (5.125) The solutions to Equation 5.124 and 5.125 are indeterminate at 6 = 0. It is shown in Appendix B that the solutions to the original equations 5.101 and 5.102 are only indeterminate at a single point, defined by 6 = 0 and fv = 1. Numerical integrations over 6 of Equations 5.124 and 5.125 were carried out, avoiding this singularity, and the variations of Ff and Tf with lni) are plotted in Figure 5.44. The values of Ff and Tf are normalized such that Ff{max) = 1 when v — 0 and Tf{max) — 1 when v = oo. Further details regarding the solutions to Equations 5.101, 5.102, 5.124 and 5.125 and the numerical integrations are given in Appendix B. 5.5 Results Figure 5.44 shows that the frictional force resisting translational motion of the cylinder is at a maximum when v = 0 (i.e. when UJ = 0). This maximum value is given by Equation 5.93. As v approaches infinity (v —» 0) the frictional force approaches zero. The frictional torque resisting rotational motion of the cylinder displays an opposite effect, Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 91 LN(VBAR) Figure 5.44: Plots of Normalized Frictional Force and Torque vs. \nv and is at a maximum (given by Equation 5.96) when v = oo (v = 0) and approaches zero when v approaches zero (LU —» 0). Both Ff and Tf are strong functions of v in the range 0.1 < v < 10 5.6 Polynomial Solutions for Ff and Tf Polynomial curve fitting analysis was applied to the plots in Figure 5.44 such that an analytical approximative solution could be used in the grasping simulation programs described in Chapter 6. These solutions are given in Sections 5.6.1 and 5.6.2 and are expressed in terms of z, defined by z = ln v (5.126) Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 92 5.6.1 Polynomial Solutions for Frictional Force Ff The normalized Ff curve is divided into four regions, and the approximate solutions are the following: For z < -2.5, ^ = 0.997397500 - 0.00037662 (5.127) For -2.5 < z < 0, Ff = -0.006564148626 - 0.0583282482z5 - 0.2115588129z4 - 0.41258103923 -0.48724691722 - 0.36712612062 + 0.8499766982 (5.128) For 0 < x < 5.3, Ff = -0.000159368426 + 0.002514918825 - 0.012742907924 + 0.004356298923 +0.185915250022 - 0.69280901642 + 0.8753380264 (5.129) For 2 > 5.3, Ff = 0.0075621 - 0.00084512 (5.130) 5.6.2 Polynomial Solutions for Frictional Torque Tf The normalized Tf curve is divided into four regions, and the approximate solutions are the following: For 2 < -4.5, Tf = 0.011842019 + 0.001660022 (5.131) For -4.5 < 2 < 0, Tf = 0.000530890226 + 0.00823857l25 + 0.052071854824 + 0.177082897223 +0.370317596922 + 0.51872717692 + 0.42053303304 ( 5.132) Chapter 5. Frictional Effects for Combined Translational and Rotational Motion 93 For 0 < z < 2.5, Tf = 0.0046463642z6 - 0.036610898725 + 0.089286056924 + 0.021761544323 -0.489947927z2 + 0.90556700892 + 0.4065730217 (5.133) For z > 2.5, Tf = 0.994530224 + 0.0006240012 (5.134) Chapter 6 Computer Simulations 6.1 Introduction The analyses given in Chapters 4 and 5 have been used as a basis for the writing of four computer programs, in FORTRAN, which simulate the grasping process. The first program, SQ4, simulates the planar grasping of a cylindrical object using a two-fingered hand, where each finger is made up of two links and the motion of the links in each finger is sequential. The gripper which is described in Chapter 3 is one which falls into this category, and can therefore be simulated using SQ4. Program SQ6 is an extension of SQ4 and simulates a six degree-of-freedom planar gripper (two fingers, three links per finger) with sequential link motion. Programs SM4 and SM6 are similar to SQ4 and SQ6 except that the grippers which are simulated have simultaneous, rather than sequential, link motions. The programs have been written in a manner which allows for wide versatility of simulation; in each case, only the type of hand is specified, and all other parameters (dimensions, speeds, force and torque limits, friction coefficients, etc.) can be varied. The completed programs can therefore be used to carry out a wide range of investigations into planar robotic grasping. 94 Chapter 6. Computer Simulations 95 6.2 The Simulation Program SQ4 6.2.1 General Description All input parameters for the simulation are entered into two input files HANDHARD and HANDINPT. HANDHARD consists of basic hand hardware parameters such as link lengths, palm width, open hand configuration, etc.. HANDINPT consists of more easily variable parameters such as initial object size and position, friction coefficients, motor speeds, etc.. Changing the parameters in HANDINPT results in different simulations using a particular hand, whereas changing the parameters in HANDHARD results in simulations using different hands. Listings of HANDHARD and HANDINPT can be found in Appendix C. When the program is executed, the link motion towards and around the object, as well as the dynamic behavior of the object during the grasping process, are simulated. Program execution terminates when one of the following situations is reached: (i) Invalid Initial Link and Object Positions If the initial positions of the links and objects as entered in HANDHARD and HAND-INPT are impossible to achieve due to spatial interference, execution of the program is aborted and an error message is returned. Other input data is not validated, however, so that the simulation of purely hypothetical situations (e.g. friction coefficient between object and surface of 16.0, or object density of 0.5kg/m3) is allowed. (ii) Link Motion becomes Constrained This can occur in one of two ways. In the first case, all the links will have closed around the object, and a force or form closure grasp will have been achieved. Messages indicating the progressive and final status of the grasp are returned on the monitor screen. Chapter 6. Computer Simulations 96 In the second case, two or more links collide with one another. In this case, the message "Links Interfere" is returned to the screen. If a stable grasp had already been achieved by other links before the interference occurred, this is also indicated and the grasp is considered successful. (iii) Object Slides out of Range If the object slides out along the links so that it can no longer be constrained, program execution halts and the message "Unsuccessful Grasp" is returned to the screen. (iv) Premature Switching-Off of Motors In some cases the initial high acceleration of the object as it starts to slide out of the grasp when held between the two outer links causes normal contact forces to exceed the limits set in HANDINPT. In this case, the switching-off of the actuating motors is simulated, and program execution will terminate. A message indicating that the grasp was unsuccessful is returned to the screen. The program SQ4 produces four outputs: (i) Animated Output An animated output showing continuously updated positions of the links and object during program execution is displayed on the monitor. This display allows easy on-line monitoring of the way in which the grasp is progressing, and program errors (e.g. object executes a motion which intuitively appears impossible or unlikely) are more easily detected. The animated output also adds quality to the program for demonstration purposes. Figure 6.45 shows examples of the final part of this animated display. Chapter 6. Computer Simulations 97 Figure 6.45: SQ4 Animated Display: Examples of a Successful Grasp. Chapter 6. Computer Simulations 98 (ii) Object and Link Positions - Tabular Output A tabulated output of the linear (x- and y-coordinates) and angular positions of the object, as well as the link positions, against time is produced in the output file HANDOUPT. The data can be plotted graphically using external graphic routines. (iii) Contact Forces - Tabular Output The second tabulated output shows the variation of the normal contact force at each link with- time. This data is sent to the output file HANDCFOR. (iv) Program Execution History The output file HANDHIST, produced after each simulation run, contains a listing of all the subroutines in the program which were accessed, and the order in which access was made. This output is useful for evaluation of the program logic and flow, and has also proved to be indispensable in the debugging of the program. 6.2.2 Main Program Layout The first part of the main program is responsible for: 1. Opening of interactive files. 2. Data input. 3. Setting up of output tables. 4. Initial calculations from inputs, and initialization of variables. 5. Initialization of the animated display 6. Validation of the inputs (through appropriate subroutines). 7. Simulation of the grasp prior to first contact (through appropriate subroutines). Chapter 6. Computer Simulations 99 Figure 6.46: Link Designations. The single most important variable which determines how control is distributed within the main program and subsequently to the appropriate subroutines is the contact status variable CONTACT which is evaluated at Line 210. The five variables CONA, CONB, CONC, COND and CONE represent the contact statuses of the four links A, B, C, D and the palm, which is designated as link E, as shown in Figure 6.46. Each of the five variables CONA, CONB, CONC, COND and CONE can have a value of either 1 or 0, depending on whether the particular link is in contact with the object or not. The variable CONTACT is essentially a binary integer which is converted to decimal in Line 210. This is illustrated in the following example (ref. Figure 6.47) Suppose the object is in contact with links A, B and D. The variable CONTACT in its binary form is equal to 11010 where the five digits represent respectively the contact statuses of the five links A, B, C, D and E. From Line 210, CONTACT is evaluated to be 26, and program control is directed to Line 260 in the main program, which is responsible for dealing with this combination of contacts. The portion of the program which starts at Line 260 then calls subroutine Routine9, whose responsibilities include determination of whether there is form closure, grasp stability or slide of the object and, Chapter 6. Computer Simulations Figure 6.47: Flow Chart for a Main Program Section. Chapter 6. Computer Simulations 101 based on the values of certain variables returned from Routine9, the main program will decide whether to simply actuate Link C (RoutineS) or whether to call Routine64, which simulates the object slide between links A and D over one time increment. (Note: in Figure 6.47, OFF2=l indicates that Motor 2 is off; S01=l indicates that Motor 1 drive has switched over; and SLIDEAD=3 indicates that the grasp is unstable and the object will slide along Links A and D). The main program then checks whether the links have interfered with each other (Routinell), and whether the object has hit the palm (Routinel5). This is followed by an updating of the animated output (Routine40) and writing of the data to the output files. Finally the main program checks whether the contact status has changed (i.e. whether links C or E'have been contacted) and if this has occurred control is transferred back to Line 210. If the status is still unchanged, this section of the main program is run through again from Line 261 for a further time increment. It should be noted with reference to this example that if the object slides out between links A and D then contact with link B will be broken, and CONB becomes 0. Since this part of the main program is also responsible for the contact situation 10010, or CONTACT= 18, however, control is not transferred back to Line 210 in this case. The integer variable INFER is a flag which is set to zero during program initialization. When INFER becomes 1 it is a signal that program execution must stop, and the main program will transfer control to Line 9999 which initializes the closing down sequence. INFER may be set to 1 either in the main program or within a subroutine, whenever a situation calling for termination of program execution is reached. The program termination sequence, starting at Line 9999 in the main program, up-dates the animated output and then freezes it for a few seconds before calling the graphics termination routines. The final values of CONA, CONB, CONC and COND are output to the output file HANDHIST. Chapter 6. Computer Simulations 102 6.2.3 Description of Subroutines Introduction The subroutines in program SQ4 have been categorized into five groups as follows: G roup 1: Analytical-Static (A-S) (Routines 7,8,9,12,19 and 27) In these, routines the analysis of a situation is carried out, however there is no link actuation or object movement. An example of an A-S routine is Routine9 which checks whether a three-link (A, B and D) grasp has form closure, grasp stability or lack of grasp stability. Group 2: Analytical-Dynamic (A-D) (Routines 5,6,25,26,37,63,64 and 65) These are the routines which simulate the dynamic behavior of the object, and involve the solution of dynamic equations of motion. An example of an A-D routine is Routine64 which simulates object slide along links A and D. Group 3: Geometric-Dynamic (G-D) (Routines 1,2,3,4,16,17,80 and 81) These are the routines which involve link or object movements without the need to solve dynamic equations of motion. An example of a G-D routine is Routines which simulates the actuation of Link C. Group 4: Geometric-Static (G-S) (Routines 10,11,15,21,22,50,51,53 and 54) These routines are responsible for making static geometric calculations of variables for use by other subroutines or by the main program. An example of a G-S routine is Routine 11 which checks whether or not there is interference between the gripper links. Group 5: Display (Routine 40) Routine^O is responsible for updating the animated display on the monitor during program execution. Chapter 6. Computer Simulations 103 Initialization Line 210 Termination Main Program Sections Display A-D Routines G-D A-S Routines Routines G-S Routines Figure 6.48: Program Hierarchical Structure. All dynamic routines simulate motion over one time increment DT. Program Hierarchical Structure The program structure may be represented in a hierarchical fashion as shown in Fig-ure 6.48, where any section or routine may only call upon another routine which lies on a lower level in the hierarchy. Description of Subroutines The individual subroutines used in program SQ4 are described below. The main program variables are defined in the Nomenclature section of this thesis, whereas a list of all program subroutines is included in Appendix C. Chapter 6. Computer Simulations 104 Figure 6.49: Detecting Contact of Object with Link A. Routine 1 (G-D) - Link A Actuation and Contact Check (Ref. Figure 6.49.) [Note: If contact with Finger 1 already exists before execution of this routine, steps 2, 3 and 4 below are omitted.] 1. The new position of Link A is calculated using AA = AA + WA * DT. 2. In Figure 6.49(a) above, if VI < (R + Tl) and V2 < LINKA then contact has been achieved and CON A is set to 1. AA is adjusted slightly so that VI = R + Tl, and LA is set to V2. XC and YC are calculated. 3. Routine21 is called to check whether there has been contact with Link C. 4. In order to check whether the object has hit the upper corner of Link A or the lower corner of Link C, the variables V3 and V4 in Figure 6.49(b) above are calculated from X, Y,XC, YC, T1,AA and AC. If V3 < R or VA < R then the object position Chapter 6. Computer Simulations 105 Figure 6.50: Detecting Contact of Object with Link B. is adjusted slightly so that it is in tangential contact with the lowermost point of Link C, and CONC is set to 1. 5. Since steps 2, 3 and 4 may have been omitted, the new values of XC and YC are recalculated. Routine 2 (G-D) - Link B Actuation and Contact Check (Ref. Figure 6.50.) Subroutine structure is identical to that of Routinel. Routine 3 (G-D) - Link C Actuation (Ref. Figure 6.51.) 1. The new position of Link C is calculated using AC = AC + WC * DT. 2. Routine!!!! is called to check for contact with Link C. Chapter 6. Computer Simulations 106 Figure 6.51: Actuation of Link C. Routine 4 (G-D) - Link D Actuation Subroutine structure is identical to that of RoutineS. Routine 5 (A-D) - One-Contact Simulation - Link A [Please refer to analysis Section 4.3.1.] 1. If switch-over of drive has already occurred, RoutineS is called for actuation of Link C and control is returned to the main program. 2. The object radial and normal velocities (VR and VN) at the point of contact with the link are calculated from Equations 4.16 and 4.17. 3. If this is the first run of Routine5, the object initial velocities are calculated from VN and VR. 4. Routinel9 is called to update the values of frictional force and torque between the object and the supporting surface. Chapter 6. Computer Simulations 107 5. PSIA is estimated from Equation 4.4, and FNA is estimated from Equation 4.5. Finger 1 is checked for switch-over of the drive mechanism. If switch-over occurs, RoutineS is called for actuation of Link C and control is returned to the main program. The tangential contact force is checked against its maximum limit as set by Condition 4.20. If maximum limit is not exceeded, FCA is set to equal the left-hand side of Condition 4.20 and the slip indicator SLIPA is set to 0. Otherwise FCA is estimated from Equation 4.21 and SLIPA is set to 1. If this is the first run and SLIPA=1 then the initial angular velocity of the object is set to zero. 6. Routinel is called for actuation of Link A. 7. (This step is executed if SLIPA= 0). Equations 4.6 and 4.9 are solved for an-gular acceleration, velocity and position. LA, LAV and LAA are estimated from Equations 4.7, 4.8 and 4.9 respectively. 8. (This step is executed if SLIPA= 1). Equation 4.22 is solved for LAA, LAV and LA, whereas THA, THV and TH are obtained from Equation 4.23. 9. The new position of the object centroid is calculated using the updated values of AA and LA. The new values of XVEL and YVEL are estimated from Equations 4.13 and 4.14. 10. If LA>LINKA, the object is assumed to be in contact with LINKC with LC = 0. Otherwise Routine21 is called in order to check whether contact has been made with Link C. Routine 6 (A-D) - One-Contact Simulation - Link B Subroutine structure is identical to that of Routine5. Chapter 6. Computer Simulations 108 Routine 7 (A-S) - Stability Check - Links A and B [Please refer to analysis Section 4.4.1.] 1. Object angular velocity and acceleration are set to zero. 2. The maximum available contact force is evaluated. 3. LAMBDA and PSI are estimated for configurations 1 and 2. If the configuration is 3 (i.e. Links A and B are parallel), switch-over occurs at both fingers and control is transferred back to the main program. 4. If Condition 4.40 is met there is grasp stability and both drives switch over. If Condition 4.40 is not met but Condition 4.41 is met then there is also grasp stability. Otherwise the indicator SLIDE is set to 3, indicating that the grasp is unstable and object slide will occur. Routine 8 (A-S) - Form Closure/Stability Check - Links A,B and C [Please refer to analysis Section 4.5.] 1. Object angular velocity and acceleration are set to zero. 2. If the angle between each of the three adjacent contact force pairs is less than 7r, then there is translational form closure, and the indicator FCLOSis set to 1. If FCLOS = 1, Motor 2 drive switches over and Motor 1 is turned off. The contact forces are set to the maximum available from Links B and C, and control is transferred back to the main program. 3. The torque arm of FNC about Joint A, is evaluated. 4. The remainder of Routine8 constitutes a stability check for the non-form closure case, and is similar to steps 2, 3 and 4 in Routine!. Chapter 6. Computer Simulations 109 Figure 6.52: Points and Lines which may collide. Routine 9 (A-S) - Form Closure/Stability Check - Links A,B and D Subroutine structure is identical to that of Routine8. Routine 10 (G-S) - Validation of Input Data Using techniques similar to those described for Routine 1 and Routine2, this routine checks for interference or contact with the four links and the palm, as well as for contact with the link corners. If the object is just touching a link, the appropriate contact status variable (e.g. CONA) is set to 1. If there is any spatial interference between object and link(s), the integer flag IPERR is set to 1. Routine 11 (G-S) - Check for Interference between Links (Ref. Figure 6.52.) 1. The x- and y- coordinates of all the relevant link corners are calculated. Chapter 6. Computer Simulations 110 2. For the remainder of this subroutine, the x- and y- axes are transposed to those shown in the figure. 3. The slope of Line D is calculated. If the point (XCTF, YCTF) lies below Line D and YCTF < YDTF then there is interference of Link D with Link C. In order to ascertain that there is no interference between Link D and either Link A or Link C, this test is repeated for the points (XCTR, YCTR), (XCBF, YCBF) and (XATF.YATF). 4. Procedures similar to step 3 above are carried out for Links C, B and A. 5. If at any stage link interference is detected, the integer flag INFER is set to 1. Routine 12 (A-S) - Form Closure/Stability Check - Links A,B,C and D [Please refer to analysis Section 4.5.] This routine is very similar to routines 8 and 9. If there is no form closure the two possible configurations are tested for stability. If (AB+AD) > (AA+AC) and the grasp is unstable, the integer variable SLIDEABCD is set to 5, whereas for an unstable grasp with AA > AB, SLIDEABCD is set to .^ For a stable grasp with no form closure, SLIDEABCD is set to 0. Routine 15 (G-S) - Check for Contact with Palm (Ref. Figure 6.53.) If Y < R+PALMO, then CONE is set to 1 and Y is adjusted to equal Y+PALMO Routine 16 (G-D) - Two-Contact Simulation - Link A and Palm (Ref. Figure 6.54.) Chapter 6. Computer Simulations Chapter 6. Computer Simulations 112 1. Routine 1 is called for actuation of Link A. 2. Coordinate XAP and angle SEMIANGLE are calculated from XA,PALMO, Tl and AA. The new coordinate X of the object centroid is calculated. 3. The variable LA OLD is set to the old value of LA, and the new value of LA is calculated. 4. Assuming that there is slip at the palm only, the incremental rotation ROT is calculated from LA and LAOLD, and the value of angular position TH is updated. Routine 17 (G-D) - Two-Contact Simulation - Link B and Palm Subroutine structure is identical to that of Routine 16. Routine 19 (A-S) - Estimations for Surface Friction [Please refer to analysis in Chapter 5.] 1. If either the linear velocity Vox the angular velocity THVoi the object (or both) are equal to zero, the static and kinetic friction coefficients are calculated accordingly (Equations 5.93 and 5.96) and control is transferred back from the subroutine. 2. VBAR and Z are calculated from Equations 5.103 and 5.126. 3. The surface friction force and torque factors are calculated from Equations 5.127 to 5.134, according to the value of Z. 4. The static and kinetic frictional coefficients are estimated. Chapter 6. Computer Simulations 113 Figure 6.55: Detection of Contact with Link C. Routine 21 (G-S) - Check for Contact with Link C (Ref. Figure 6.55.) This routine is similar to Routine 1 except that in this case three conditions, rather than two, must be satisfied in order to imply that contact has been made with Link C. These are: • VI < R + Tl • VI < LINKC • SLOPEDC- (AA+AC) < \ The third condition is necessary to prevent false contact detection when the object crosses over a downward extrapolation of Link C, as shown by the dashed part of Fig-ure 6.55. Chapter 6. Computer Simulations 114 Routine 22 (G-S) - Check for Contact with Link D Subroutine structure is identical to that of Routine21. Routine 25 (A-D) - One-Contact Simulation - Link C [Please refer to analysis in Section 4.3.2.] This routine is set out in a manner which is identical to Routine5. Routine 26 (A-D) - One-Contact Simulation - Link D Subroutine structure is identical to that of Routine25. Routine 27 (A-S) - Stability Check - Links C and D Subroutine structure is identical to that of Routine!. Routine 37 (A-D) - Slide Simulation - Links A and B [Please refer to analysis Section 4.4.2.] 1. The variables XOLD, YOLD, LAOLD and LBOLD are updated to the existing values of X, Y, LA and LB. 2. In accordance with the switch-over statuses of the motor drives, the appropriate link actuation routines are called. 3. The new position of the object centroid is calculated using RoutineSO. 4. The distance TRANS moved by the object centroid during the time increment is calculated. The direction PHI in which the object centroid moved is also calculated. Chapter 6. Computer Simulations 115 5. The average velocity V and acceleration A of the object centroid over the time increment are estimated. 6. Routinel9 is called to update the values of frictional force and torque between the object and the supporting surface. 7. The contact forces are estimated from Equations 4.42 or 4.43. 8. Checks are carried out for switching-over of the drives. 9. Checks are carried out for sliding of the object beyond Links A and B and for contact with Links C and D. Routine 40 - Graphical Display This routine makes use of a number of subroutines from the APOLLO DOMAIN GMR graphics library in order to display the rectangular links and circular object. 1. The relevant coordinates and dimensions are converted to mm.. This conversion must be carried out since the GMR subroutines require that their arguments be in integer form. 2. The routine GM-SEGMENT-OPEN, which opens a graphics segment for modifi-cation, is called. 3. The coordinates of the picture border are calculated based on the hand dimensions and assigned to the variable array IBORDER. 4. The coordinates of the four corners of the palm are calculated and assigned to the variable PALM-CORNERS. Chapter 6. Computer Simulations 116 5. The variable arrays PACNTR, PBCNTR, PCCNTR and PDCNTR are assigned the coordinates of the four joints A, B, C and D. 6. All coordinates of the four links A, B, C and D are calculated and assigned to the variable arrays POS A, POSB, POSC and POSD. 7. The coordinates of the object centre are assigned to the variable array CENTRE and the end points of the object angular position marker are calculated and assigned to the variable array MARKER. 8. The routine GM-SEGMENT-ERASE is called to erase the previous contents of the segment. 9. The routine GM-POLYLINE-2D16 is called seven times to draw the picture border, the palm, the four links and the object marker. 10. The routine GM-CIRCLE-16 is called five times to draw the four joints and the object. 11. The routine GM-SEGMENT-CLOSE is called to close the amended segment. 12. The routine GM-DISPLAY-REFRESH is called to replace the previous display by the new display consisting of the updated link and object positions. Routine 50 (G-S) - Object Position Calculation - Links A and B In Figure 6.56, OH = LA sin AA + (R + Tl) cos AA = LB sin AB - (R + T2) cos AB HB = (R + Tl) sin AB - LA cos AB Chapter 6. Computer Simulations 117 Figure 6.56: Object Position Calculation for Links A and B. BA - HB = (R + T2) sin AB + LB cos AB The three equations are solved for HB, LA and LB, and X and Y are calculated. Routine 51 (G-S) - Object Position Calculation - Links C and D (Ref. Figure 6.57.) This situation is similar to that solved by RoutineSO except that in general the line CD is not horizontal. The distance CD and angle DL are first calculated from knowledge of the coordinates XC, YC, XD and YD. Analysis identical to that described for Routine50 is then carried out, and the coordinates (X, Y) are calculated from LC and LD. Routine 53 (G-S) - Object Position Calculation - Links B and C Subroutine structure is identical to that of RoutineSl. Chapter 6. Computer Simulations Figure 6.57: Object Position Calculation for Links C and D. Routine 54 (G-S) - Object Position Calculation - Links A and D Subroutine structure is identical to that of Routine51. Routine 63 (A-D) - Slide Simulation - Links B and C Subroutine structure is similar to that of RoutineSl. Routine 64 (A-D) - Slide Simulation - Links A and D Subroutine structure is identical to that of Routine63. Routine 65 (A-D) - Slide Simulation - Links C and D Subroutine structure is similar to that of RoutineSl. Routine 80 (G-D) - Two-Contact Simulation - Links A and C (Ref. Figure 6.58.) Chapter 6. Computer Simulations 119 Figure 6.58: Contact with Links A and C. 1. The surface frictional force is calculated. 2. A check for switching off of the motor is carried out. 3. If the motor has not switched off, Routine 1 is called for actuation of Link A, and the new linear and angular positions of the object are calculated for the new value of AA. Contact forces are set to equal the surface frictional force. 4. Routine2 is called for actuation of Link B. Routine 81 (G-D) - Two-Contact Simulation - Links B and D Subroutine structure is identical to that of Routine80. Chapter 6. Computer Simulations 120 6.3 Simulation of a Six Degree-of-Freedom Gripper with Sequential Link Motion (Program SQ6) 6.3.1 Introduction Program SQ6 is an extension of Program SQ4, and most of its constituent routines and subroutines are either identical or similar to ones found in the parent program. The input files for SQ6 are HAND3HARD and HAND3INPT, and the output files are HAND30UPT, HAND3CFOR and HAND3HIST. In SQ6 the two outer links are designated Links 22 and F. In order to preserve similarity of notation with SQ4, the variable CONE still represents the contact status of the object with the palm. The contact statuses with links E and F are represented by CONI and CONF respectively. In SQ6, the variable CONTACT evaluated in Line 210 is now the decimal equivalent of a 7-digit binary number, and, from the most to the least significant bits, the digits represent the contact statuses of links E, F, A, B, C, D and Palm respectively. All the main program sections and subroutines in SQ4 are present in SQ6, together with a number of additional ones. Most of the SQ4 routines were modified slightly for use in SQ6 (e.g. in Routinel - Actuation of Link A the coordinates (XE, YE) of the Link E pivot must now be calculated for the new value of angle AA). Brief comments about the new subroutines are included in the next section. 6.3.2 The new subroutines Routines 13, 14 (G-D) - Actuation of Links E and F. These routines are similar to Routines 3 and 4 m SQ4. Routines 23, 24 (G-S) - Contact checks for Links .Sand F. These routines are similar Chapter 6. Computer Simulations 121 to Routines 21 and 22 in SQ4. Routines 28, 29 (A-D) - One-contact simulations for Links E and F. The routine structures are similar to those of Routines 5, 6, 25 and 26 in SQ4. (Please re-fer to analysis Section 4.6.1.) Routine 47 (A-S) - Stability Check for Links E and F contact. This routine is similar to Routines 7 and 27 in SQ4. Routines 52, 55, 56 (G-S) - Object position calculations for Links EF, DE and CF slide. These routines are similar to Routines 50, 51, 53 and 54 in SQ4. Routines 66, 67, 69 (A-D) - Slide simulations for Links DE, CF and EF slide. These routines are similar to Routines 63, 64 and 65 in SQ4. Routines 71, 72, 73, 74, 75, 76 (A-S) - Form Closure/Stability checks for contact combinations CDE, CDF, CDEF, ABODE, ABCDF and ABCDEF. The routine structures are similar to those of Routines 8, 9 and 12 in SQ4. Routines 82, 83 (G-D) - Two-Contact Simulation for Links CE and DF. The routine structures are similar to those of Routines 80 and 81 in SQ4. Examples of the final part of the animated display obtained when using Program SQ6 is shown in Figure 6.59. 6.4 Simulation of a Four Degree-of-Freedom Gripper with Simultaneous Link Motion (Program SM4) Program SM4 is identical to SQ4 except for the following changes: 1. RoutineS - Link C Actuation is called at the end of Routinel - Link A Actuation. Chapter 6. Computer Simulations 122 Figure 6.59: SQ6 Animated Display: Examples of a Successful Grasp Chapter 6. Computer Simulations 123 2. Routine^ - Link D Actuation is called at the end of Routine2 - Link B Actuation. 3. Routine25 - One-Contact Simulation: Link C and Routine26 - One-Contact Simu-lation: Link D are modified as per analysis Section 4.6.2. 6.5 Simulation of a Six Degree-of-Freedom Gripper with Simultaneous Link Motion (Program SM6) Program SM6 is identical to SQ6 except for the following changes: 1. RoutineS - Link C Actuation is called at the end of Routinel - Link A Actuation. 2. Routine^ - Link D Actuation is called at the end of Routine2 - Link B Actuation. 3. RoutinelS - Link E Actuation is called at the end of RoutineS - Link C Actuation. 4. Routinely - Link F Actuation is called at the end of Routine^. - Link D Actuation. 5. Routine25 - One-Contact Simulation: Link C and Routine26 - One-Contact Simu-lation: Link D are modified as per analysis Section 4.6.2. 6. Routine28 - One-Contact Simulation: Link E and Routine29 - One-Contact Simu-lation: Link Fare modified as per analysis Section 4.6.3. Chapter 7 Experimental Work 7.1 Introduction The mechanical hand described in Chapter 3 was used in grasping experiments on a series of different objects and supporting surfaces. These experiments were made for two reasons: 1. to confirm the validity of the analysis on which the simulation program is based, by comparing simulated results with experimentally obtained results. 2. to verify experimentally the influence of certain object parameters on the behavior of the grasp. 7.2 Testpieces A list of testpieces which were manufactured for these experiments is given in Table 7.3. The testpieces were intended to cover a range of object sizes and weights, and of friction coefficient values between object and supporting surface. 7.3 Preliminary Experimentation and Settings The static friction coefficients between each pair of object and flat surface was determined experimentally by finding the angle of inclination of the surface at which the object, placed on the surface, would start to slide under the influence of its weight. Each value 124 Chapter 7. Experimental Work 125 Code Description C-l Aluminium bar, 3.0in dia. X l.Oin height. C-2 Aluminium bar, 60.0mm dia. X l.Oin height. C-3 Aluminium bar, 2.0in dia. X l.Oin height. C-4 Aluminium bar, 3.0in dia. X 2.0in height. C-5 Aluminium bar, 3.0in dia. X 3.0in height. P-1 P-2 P-3 Aluminium supporting plate, 25.0mm X 25.0mm. Nylon supporting plate, 25.0mm X 25.0mm. Plexiglass supporting plate, 25.0mm X 25.0mm. Table 7.3: List of Testpieces. was averaged over six readings. The threshold torque for the switching mechanism was measured experimentally by suspending weights over a lever arm and increasing the torque until thread friction was overcome. Measurements were carried out over the entire travel of each of the two mechanisms, and all values were averaged over six readings, three in each direction of motion of the thread. The speed of the two stepper motors actuating the gripper links was set to 2 revs/sec. 7.4 Experimental Procedure The experimental set-up is illustrated in Figures 7.60 and 7.61. The object was placed so that it just touched the lower right-hand link of the open gripper (Figure 7.60), and the closing of the gripper, as it grasped the object, was filmed onto a video tape using an overhead mounted CCD camera (Figure 7.61). A stopwatch placed beside the gripper provided a measure of time. Chapter 7. Experimental Work 126 Links Figure 7.60: Initial Position of Object. CCD Camera .. Indexe Host Computer m m • Power Supply Gripper, Object and Stopwatch Video Recorder SD 512 Vision Workstation Monitor Figure 7.61: Experimental Set-up (schematic). Chapter 7. Experimental Work 127 Experiment No. Testpieces Used. 1 C-1 on P-1 2 C-2 on P-1 3 C-3 on P-1 4 C-4 on P-1 5 C-5 on P-1 6 C-1 on P-2 7 C-1 on P-3 Table 7.4: Experimental Runs. The video of the grasps were later analysed using a SD512 vision workstation, and the trajectory of the object centroid, as well as the change in angular position, could be measured. Seven different experiments were run, and these are tabulated in Table 7.4. Each experiment was run six times, in order to confirm repeatability of the experimentation. Chapter 8 Results and Discussion 8.1 Introduction In this chapter, results obtained by simulation and by experiment are presented, com-pared and discussed, and the degree to which the parameters of interest affect the way in which the grasping process develops is established. In Section 8.2, a typical grasping process is discussed, and this is followed by the derivation of a number of general trends using the simulation program SQ4. In Section 8.3, experimental results are presented and compared to simulated results. Sources of discrepancies between simulated and ex-perimental results are discussed in Section 8.4. Finally, in Section 8.5, a method for non-dimensionalization of the parameters is proposed. The graphical results referred to in this chapter are included in the Graphs section of this thesis. 8.2 Simulated Results using SQ4 A series of simulation runs were carried out using the program SQ4 in order to investigate behavior of the object during the planar grasping process and to identify the parameters that determine whether or not a successful grasp is achieved. 128 Chapter 8. Results and Discussion 129 8.2.1 Object Behavior during One-Link Contact General Object Trajectory Graphs 01 and 02 show typical simulated angular and linear trajectories of the object for a grasp in which stability was achieved after two-link contact with the lower links was made. Graph 01 is a plot of object angular position versus time, from the time link motion is initiated until all four links are in contact with the object. Graph 02 shows the Y versus X trajectory of the object centroid during the same grasping process. The input data files for this simulation run are included with the graphs, and the run will be referred to as Sim. 01 in the remainder of this chapter. Discussion From Graph 01 it can be seen that first contact with the object is made after about 0.1 seconds, following which the angular position 9 of the object increases linearly during the period that there is contact with only one link (i.e. the object angular velocity 9 is constant). This is due to the fact that in Equation 4.6 (Section 4.3.1) the centrifugal force acting outward on the object is not sufficient to overcome the frictional torque under the conditions which normally prevail during the one-link contact stage of the grasping process. In Figures 8.62 and 8.63, the solution to Equation 4.6 is extrapolated to 20 seconds. These plots show that once the surface frictional torque is overcome, the object will undergo angular acceleration. When there is no slip at the link-object contact, the trajectory of the object centroid, shown in Graph 02, is determined by the solution to Equation 4.6. Chapter 8. Results and Discussion 130 0 3 SIM. 01 ONE CONTACT ANALYSIS EXTRAPOLATED TO I •0 SECONDS Case 2 Display 1: Shnulanoo • 7-MAY 91 18:20 Figure 8.62: Plot of 6 vs. time for Sim. 01 (Extrapolated) •0.1 -0.15 •0.2 •0.25 -0.3 •0.36 StM. 01 ONE CONTACT ANALYSTS EXTRAPOLATED TO » SECONDS. 0 « 8 TIME 1 2 ' 6 2 0 Cass 2 Otsptay 2: Simulation 7 MAY 91 IB 20 Figure 8.63: Plot of 6 vs. time for Sim. 01 (Extrapolated) Chapter 8. Results and Discussion 131 Contact Forces Graphs 03, 04, 05 and 06 show the build-up of the normal contact forces on each of the four links respectively as the grasp Sim. 01 progresses. Contact with Link A is made after about 0.1 seconds (Graph 03), and the contact force on this link is low during the subsequent period of one-link contact (0.1 to 0.85 seconds). When the stable two-link contact condition is reached (0.85 seconds) normal contact forces on links A and B increase to a significantly higher value, as determined by the link switching mechanism threshold torques. When the third and fourth link contacts are made (1.27 and 2.52 seconds respectively), contact forces increase to the outer link force limits. Discussion The contact force model used in this simulation assumes that for any number of contacts in a translational form closure grasp, the stresses will distribute themselves so as to give equal normal forces at all contact points. The contact force model used in this simulation is given in Section 4.5. Parameter Influences A series of simulations was run to investigate the influences of object size, mass, friction with surface and friction with link on object behavior during one-link contact. For each run, the object was placed in contact with Link A at a point half-way along the link. Motor 1 velocity was set to 2 rad/sec and Motor 2 velocity was set to 0 rad/sec. The final angular position of the object after a 30° rotation of Link A was recorded for each run. The variation of object final angular position with each of the parameters under consideration is given in Graphs 07, 08, 09 and 10. Chapter 8. Results and Discussion 132 Coefficient of friction with surface, ps Graph 07 shows the variation of final an-gular position of the object with p$- The graph shows that rotation of the object during one-link contact is only dependant on ps at low values of the friction coefficient. Discussion In Equation 4.6, for lower values of pS) T mu2l > F,ksmib + -£ K and the object is subjected to angular acceleration. The lower is the value of the friction coefficient, the greater is the angular acceleration. For ps above a certain value, the centrifugal force is not sufficient to overcome friction for the prevailing values of /, and the object does not have angular acceleration. Coefficient of friction with link, pi Graph 08 shows the variation of final angular position of the object with pi,. While there is no rotation of the object for pi, = 0, the short range of p^ from 0 + to about 0.04 has some object rotation (the amount of rotation increases slightly with pi, in this region), and the region beyond 0.04 has a high degree of object rotation that is independant of uL. Discussion This behavior can be explained by inspection of the equations in Section 4.3.1. When PL — 0) the object has an initial angular velocity of 0, and hence Tf = 0. From Equa-tion 4.23, (9 = 0, and there will be no rotation of the object. For small non-zero values of pi,, if there is slip at the link, the object still given an initial angular velocity of 0, however since pi, ^ 0, a small non-zero value of 6 is initially returned from Equation 4.23. As 6 increases, so does and angular acceleration ceases when i^Lk^NA = -/f-- For higher values of pi in this range, the final value of 6 to cause this condition to be satisfied Chapter 8. Results and Discussion 133 must be greater. For values of pi above a threshold value, there will be no slip at the link, and the object is assumed to have an initial angular velocity that satisfies Equation 4.15. Beyond the threshold value, since there is no slip at the link, object rotation is independant of any further increases in p^. Object radius Graph 09 shows that rotation of the object during one-link contact decreases with increasing object radius. This behavior can be explained by Equation 4.15 in Section 4.3.1 where the initial (and in many cases the subsequently prevailing) object angular velocity is shown to be inversely proportional to object radius R. Object mass Graph 10 shows that rotation of the object during one-link contact, in this model, is independant of object mass. This behavior can be deduced from Equa-tion 4.6 where, since Ff and Tf are functions of mass, the mass m of the object is common to all terms and cancels out. Further comments regarding the effect of mass on object rotation are given in Section 9.3. 8.2.2 Grasp Stability for Two-Link Contact A series of simulation runs were carried out to determine the influences of p$i P-L a n d R in the realization of a successful grasp using the two lower links of the hand. For each run the object was placed at the centre of the Grasp Space, defined here by the coordinates X = P/2 and Y = LA. The outer link angles ac and ct£> were set to 0. For each pair of values (p$, R), the grasp was simulated for decreasing values of U-L until the minimum value of PL for grasp stability was found. The results are shown in Graph 11. Graph 11 shows that for the smaller values of R, grasp stability becomes easier to Chapter 8. Results and Discussion 134 achieve (i.e. minimum U-L is lower) as object radius increases. At a certain critical value of R, the grasp is stable for any value of pi,. Above the critical value, grasp stability becomes more difficult to achieve as object radius increases. A higher value of u-s lowers slightly the minimum U-L required for a stable grasp. Discussion At the critical value of radius, the gripper links are parallel and the object will not slide either outwards or inwards along the links. For fiL = 0, the stability is marginal, and the grasp cannot resist an external force component which acts parallel to the links. As object radius changes so as to be further away from the critical value, in either direction, the angle 1*01 defined in Equation 4.40, Section 4.4.1, increases, so that A, and therefore PL, must be greater in order to achieve stability. Friction with the supporting surface compensates to some extent for slipperiness at the links, and may act to stop the object from sliding between the links even if ib is slightly greater than 2A (ref. Condition 4.41). This effect of ps is reflected in Graph 11. 8.3 Experimental Results 8.3.1 A Typical Experimental Run Table 8.5 is a typical set of experimental data obtained using the procedure described in Section 7.4. Each set of points in the table was obtained by analysis of a single frame taken from the film of the grasping process. In all, six separate frames were analysed for this run. The data in Table 8.5 is plotted in Graph 12. The plots are compared to simu-lated plots obtained using program SQ4 for input data representing the set of conditions prevailing during the experimental run. Chapter 8. Results and Discussion 135 Time (s) aB(°) en X(mm) Y(mm) 0.00 64.69 116.87 0.00 65.77 54.97 0.01 65.15 116.87 0.00 65.77 54.97 0.31 70.23 112.83 -2.12 61.84 56.44 0.67 80.42 103.65 -5.29 53.50 58.90 0.86 90.35 94.97 -6.99 44.42 59.39 1.26 95.68 89.46 -10.49 39.26 59.39 1.30 96.38 87.89 -10.68 38.28 58.90 Table 8.5: First Run Results for Exp. No. 3. Discussion The shape of the simulated trajectories is explained in Section 8.2.1. The data plotted in Graph 12 show that agreement between experimental and simulated results has been very close. An evaluation and discussion of the discrepancies between simulated and experimental results is given in Section 8.4. 8.3.2 Final Experimental Results Table 8.6 shows the processed results for all the experimental runs carried out. For each experiment, the mean final angular position of the object over the six runs, normalized to correspond to a 30° rotation of Link A, is presented. The standard deviation of this value over the six runs is also given for each experiment. Comparison is made with results obtained using the simulation, and the difference between experimental and simulated results, expressed as a percentage of the link rotation, is given in the final column. Chapter 8. Results and Discussion 136 Exp. No. No. of Rdgs. mean Ofinal (exp.)* Std. Dev. & final (sim.)* error ** 1 6 6.7 0.20 7.87 4.0 2 6 9.0 0.81 10.00 3.4 3 6 11.4 0.54 11.81 1.4 4 6 6.4 0.20 7.87 4.9 5 6 6,5 0.33 7.87 4.7 6 6 7.4 0.54 7.87 1.4 7 6 7.7 0.50 7.87 0.7 * normalized for 30° rotation of Link A. ** expressed as a percentage of link motion. Table 8.6: Experimental and Simulated Results. Chapter 8. Results and Discussion 137 Discussion Although the main purpose for running the experimental tests was to validate the an-alytical model, certain information regarding trends predicted by the simulation (Section 8.2.1) can be extracted from the experimental results. Runs 1, 2 and 3 demonstrate the variation of final angular position of the object with object radius. This variation is plotted in Graph 13, and the inverse relation between object radius and rotation is confirmed experimentally. The results of Runs 1, 4 and 5, plotted on Graph 14, verify that mass has no significant effect on object final angular position. Runs 1, 6 and 7 can be used to examine the effect of u-$ on final angular position of the object. These results are plotted on Graph 15. The points indicate no significant effect of us on object dynamics within the range considered. It should be noted here that the 0.97° difference between the results of experiments 1 and 7 are within the bounds of the experimental and simulation errors which are discussed in Section 8.4. 8.4 Sources of Discrepancies between Simulated and Experimental Results The sources of error, in both the simulation program and the experimental procedures, that were most likely responsible for the percentage error values quoted in the right-hand column of Table 8.6 are identified and discussed below. 8.4.1 Errors in the Simulation Program Object Initial Velocities The main source of error in the analytical model that has been used to simulate the one-link contact behavior of the object is the assumption that the object already has non-zero initial linear and angular velocities on contact with the links. This error is Chapter 8. Results and Discussion 138 reflected in the fact that the simulated rotations were consistantly slightly higher than experimentally obtained ones. The assumption was necessary since the dynamics of the stepper motor and flexibility of the link and object were not taken into account. This subject is discussed in greater detail in Section 4.7. Coulomb Friction Model Although the Coulomb Friction model was the most appropriate one to use in the simu-lation, it is generally accepted that at best this only gives a rather course approximation of actual frictional forces unless the contact surfaces are perfectly smooth. For example, although the static friction coefficient between an aluminium object and an aluminium plate was found experimentally to be 0.34 with a standard deviation of 0.06 over a total of 42 readings, individual readings of as high as 0.52 were recorded. During a single grasping experiment, the surface friction undergoes discrete and unpredictable changes due to surface irregularities, subjecting the object to unpredictable angular accelerations and decelerations. 8.4.2 Experimental Errors Reading of Data By far the largest contributing error in the experimental procedure is considered to be that involved in the reading of data, particularly of object angular position, from the video film of the grasping process. Although the vision workstation has proved indispensible to success of the experiments, the angles that needed to be measured were very small. Maximum resolution of linear measurement was one pixel on the video screen, and a change of one pixel in the crucial measurement for object angular position resulted in a change in 6 of around 0.7°. Furthermore, the still frames extracted from the video Chapter 8. Results and Discussion 139 film tended to lose a considerable amount of their clarity and focus, and this further confounded accurate placing of the cursor for measurement. It is considered that the angular measurements taken may have only been accurate to within the nearest degree. Mechanical Defects The friction clutch switching mechanism, described in Section 3.3, has not been devel-oped to its optimum design specifications and still exhibits less than perfect operation. In particular, the switching torque threshold was still less than was desirable, even at maximum setting of the thread mating friction. During the experimental runs, the clutch may have occasionally slipped slightly, therefore causing irregularity in the motion of the lower link. Other experimental errors are attributed to backlash in the gearing and cable trans-missions of the hand. 8.5 Non-dimensionalization of Parameters All input parameters involving length are non-dimensionalized with respect to the palm span S (ref. Figure 8.64), defined by S = P - Ti - r 2 The parameter S has been selected for two reasons: 1. When the link lengths are non-dimensionalized with respect to S, important in-formation regarding the ratio of length to width of the grasp space is obtained. The hand shown in Figure 8.64 has non-dimensionaliized link length parameters LINKA = LIN KB = LINKC = LINKD = 1. Figures 8.65 and 8.66 show the effect of changing these parameters to 0.5 and 2 respectively. Chapter 8. Results and Discussion Figure 8.65: LINK = 0.5 Chapter 8. Results and Discussion 141 o o Figure 8.66: LINK = 2 The three illustrated hands are expected to have vastly differing grasping capability characteristics. 2. When the object diameter D is non-dimensionalized with respect to S, a funda-mental change in the type of grasp occurs when the non-dimensionalized object diameter D = 1 as illustrated in Figures 8.67 and 8.68. For D < 1, the lower links exert forces on the object which tend to pull it into the grasp, whereas for D > 1 these forces tend to push the object out of the grasp. The value of D is therefore expected to have significant influence on the prospect of achieving a successful grasp. All angular speeds are non-dimensionalized with respect to the unity speed of 1 rad/sec. Chapter 8. Results and Discussion 142 Figure 8.67: D < 1 Figure 8.68: D > 1 Chapter 9 Grasping Dexterity 9.1 Introduction The results presented in Chapter 8 indicate a high degree of interdependance between the various parameters with respect to the prospect of achieving a successful grasp. It appears unlikely, at this stage, that trends which have emerged can be dexterously manipulated into a single encompassing formula which expresses grasping dexterity, in terms of the affecting parameters, in a closed form solution. In this chapter, a definition for Grasping Dexterity is proposed, and the results that have been obtained are discussed in a context relevant to this definition. An empirical expression for Grasping Dexterity, which may be solved numerically, is developed, and an example is provided to illustrate its solution. Finally, a number of topics regarding dexterity are discussed. 9.2 Parameter Classification The four simulation programs, SQ4, SQ6, SM4 and SM6, enable the investigation of the effects of a large number of hand and object parameters on the grasping process. These parameters are classified as follows: Category 1: Class of Hand • Four links, sequential motion. • Six links, sequential motion. 143 Chapter 9. Grasping Dexterity 144 • Four links, simultaneous motion. • Six links, simultaneous motion. Category 2: Fixed Hand Parameters • Link sizes. • Palm width. Category 3: Adjustable Hand Parameters • Motor speeds. • Friction clutch mechanism switching torque. • Outer link force limit. • link initial angles. Category 4-' Object Parameters • Object size. • Object initial position. • Object mass. • Friction coefficient between object and flat surface. Category 5: Hand-Object Parameter • Friction coefficient between object and link. Chapter 9. Grasping Dexterity 145 9.3 Parameter Influences on the Grasping Process In general, the investigation of any one of the parameters listed in Section 9.2 cannot be isolated from the consideration of some or all of the other parameters (i.e. many of the parameters are coupled). For example, while increasing the link size may increase the chances of a successful grasp for a larger diameter object, it may decrease the chances of success if the object were smaller. A general comment on the influence of each parameter is included in this section. Number of Degrees-of-Freedom In general, increasing the number of degrees-of-freedom of the hand increases both its grasp space and its capability to conform to the object. The likelihood of collision between the outer links during the grasping of smaller objects (D < 1), however, is also increased. In the case of sequential link motion, if the initial configuration of the links is convex (i.e. ctc < 0, ct£) > 0), the success of the grasp may depend only on the ability to achieve stability with the first two links that make contact, as long as the object is within the grasp space, and may therefore be independant of the number of degrees-of-freedom. The time taken to complete the grasp also increases with number of degrees-of-freedom for sequential link motion. In the case of simultaneous link motion, increasing the number of degrees-of-freedom of the hand in general increases the chances of achieving a successful grasp for larger objects (D > 1). Mode of Link Motion In comparison with sequential link motion, simultaneous link motion decreases the time taken to complete the grasping attempt, whether or not success is achieved. For larger Chapter 9. Grasping Dexterity 146 objects, the chances of success increase since even if the initial link configuration is convex, it may have become concave by the time two-link contact is achieved, or by the time the object has slipped out along the links if the initial two-link grasp is unstable. For smaller objects, simultaneous link motion may increase the probability of incurring outer link interference, and may jeopardize the chances of achieving a successful grasp by means of links which are closer to the palm. Link Sizes Increasing the non-dimensionalized link sizes increases the grasp space of the hand, how-ever the probability of incurring outer link interference also increases. Motor Speeds Increasing the motor speeds reduces the time taken by the grasping process. The cen-trifugal force acting on the object during one-link contact also increases however, possibly causing the object to move further up the link. The chance of overshooting the link before second contact is achieved is therefore increased. Increasing motor speeds also increases the impact loading on the object, and contact forces increase due to higher initial accelerations of the object. Switching Torques and Outer Link Force Limits Changes in these torque and force thresholds affect the final magnitudes of the contact forces, but do not affect the chances of achieving a successful grasp as defined in this context. In the case of a stable grasp with no translational form closure, the magnitudes of the external forces and torques that can be withstood are greater for higher contact forces since the contact friction forces are greater. Chapter 9. Grasping Dexterity 147 If the maximum allowable contact forces on the object are limited due to the possibil-ity of damage to the object, increasing switching torque and force limits beyond certain values is undesirable. Link Initial Angles Essentially, a convex link initial angle configuration facilitates a horizontal approach towards the object, whereas a concave configuration improves the chances of achieving a successful grasp. Object Size For D < 1, there is a greater chance of achieving a successful grasp as the object size increases. For D > 1, the chance of achieving a successful grasp in general decreases with increasing object size. Object Initial Position The initial position of the object has a large bearing on whether or not a grasp will be successful. In general, the probability of success is higher if the object is initially placed close to the centre of the grasp space. For convex configuration hands with three or more links per finger, however, it may be preferable to place the object closer to the palm so that initial contact is made with the two lower links. Object Mass Based on the assumptions taken in the analysis (Chapter 4), object mass typically has no influence on final object position in a successful grasp involving grasp stability after two-link contact (Section 8.2.1). A higher mass of course affects the dynamics and forces Chapter 9. Grasping Dexterity 148 during initial object acceleration at first contact (ref. Section 4.7.3), and during object slide in an unstable two-link grasp. Friction coefficient between object and flat surface A higher friction coefficient between the object and the supporting surface increases the probability of achieving a stable grasp since the flat surface may be considered to act as an extra link, and exerts a frictional force that helps resist external forces. In low friction conditions, higher surface friction also reduces the amount of object rotation during one-link contact, thus reducing the risk of the object moving out of the grasp space before two-link contact is achieved. Friction coefficient between object and links A higher friction coefficient between the links and the object increases the chances of achieving a successful grasp when there is no form closure. The magnitudes of external forces and torques that can be withstood by a successful grasp are also higher for higher object-link friction. 9.4 A Grasping Dexterity Measure This thesis proposes that the Grasping Dexterity of a hand be defined as a measure that indicates the ability of the hand to achieve successful grasps under a wide variety of situations in the shortest possible time. Grasping dexterity is a function of the hand alone, and not of the hand and object. In order to obtain a value for grasping dexterity, however, the performance of the hand when dealing with various object parameters must be investigated. These parameters are included in categories 4 a n d 5 in Section 9.2. Chapter 9. Grasping Dexterity 149 Figure 9.69: Initial Object Centroid Position for a Successful Grasp. Since the object-link friction, listed in Category 5, is a function of both hand and object, it cannot be treated at par with the other parameters listed in Category 4- If it is assumed that for maximum possible link friction, a gripper should have a rubber or similar material over its link gripping surfaces, then the slipperiness a of an object can be defined as the coefficient of friction between the object and a rubber surface. Thus a is a property of the object alone. For a given hand and object we define an area A which contains all the initial positions of the object centroid that result in a successful grasp (ref. Figure 9.69). The area A can be determined using the simulation program. In non-dimensional form, this area can be expressed by (9.135) We now define the Grasp Range GR of the hand as Chapter 9. Grasping Dexterity 150 GR - / / / A dR dps da (9.136) Jo Jo Jo Thus the grasp range of the hand is an (n-/-2)-dimensional volume, where n is the number of object parameters being considered. In this case n = 3 since we are considering object size, friction with the supporting surface and slipperiness. We define the Grasping Dexterity GD as C R GD = -J- (9.137) t* K ' where t is the average time for grasp completion over the grasp range GR and q is an index that reflects the degree to which the environment is either range or time oriented. The units of GD are sec~q 9.5 Using the Simulation Programs to Measure Dexterity: An Illustrative Exercise Program SQ4 was modified to run a series of simulation runs which would provide an estimate for GR and GD for the 4-do/hand described in Chapter 3. The numerical equivalent of Equation 9.136 used in the program was the following: i 80 1 1 110 400 ^=7iEE E E E IAyAxApLApsAR (9.138) fi=5/is = 0 ^£, = 0x=-40 y=10 where 1 for a successful grasp 0 for an unsuccessful grasp anc Ay = 10mm Chapter 9. Grasping Dexterity 151 Total No. of Simulation Runs 900240 No. of Successful Grasps 28676 Total Time for Successful Grasps 20415.27s Average Time for a Successful Grasp 0.7119288s Grasp Range 0.6639 Grasping Dexterity (q = 1) 0.9325s"1 Table 9.7: Simulation Run Results and Grasping Dexterity. Ax ApL Aps AR S 10mm 0.1 0.1 5 mm 60mm The results of these simulations are given in Table 9.7. 9.6 Discussion I: Factors which Influence Grasping and Dexterity In this chapter, dexterity has been analysed only with respect to the ability of a hand to grasp an object successfully and fast (hence "Grasping Dexterity"). Grasping Dexterity, however, is only a subset of that overall property of the hand that we refer to as "Dex-terity". A number of points, regarding Grasping Dexterity as well as Dexterity in the broader sense, are brought up in this section. Chapter 9. Grasping Dexterity 152 9.6.1 Object Shape and Orientation In all the analysis in this thesis, the object has been assumed to be circular. This assumption, which has been made in other studies ([31], [32] and [33]), is useful both for simplification and generalization of the analytical problem. In practice, however, objects are very often neither circular nor symmetrical. The problem becomes much more complex not only because of the need to analyse a wide variety of non-regular shapes, but also because other issues, such as initial object orienta-tion, come into play. Thus the shape factor, or aspect ratio, of an object, and the initial configuration of the hand links with respect to the orientation of the object influences the grasping process, even though not related to the "dexterity" of the hand. The dexterity of the hand can be increased if it is given the capability of first obtaining shape information through successive gentle grasps of the object (through the use of position sensors on the links), and then reorienting itself to maximize grasp stability. This exercise has been carried out in [4]. 9.6.2 Sensing and Feedback It is reasonable to assume that, in general, the greater the sensing capability of a hand', if used correctly, the greater is its dexterity. The hand in its present state has passive, or bang-bang, sensing capability. It is equipped with force sensors that are being used more for the sensing of motion limit than for the measurement of force, although their threshold, and thus final contact force magnitude, may be adjusted. Use of more active force sensing, to control motor speed and/or torque, and the incorporation of tactile and/or slip sensing could increase the grasping effectiveness and dexterity of the hand. Chapter 9. Grasping Dexterity 153 • A large number of degrees of freedom in the manipulator or hand. • The ability to achieve fine resolutions with high accuracy. • The ability to achieve these same resolutions of accuracy at high speed. • The ability to achieve all of the above in a large working volume so that many parts of the enviornment can be accessed by one manipulator. Note that in a flexible assembly system it is important for the manipulator to be able to reach out to loading and unloading stations as well as work on several tasks in its immediate proximity close to the home position. Table 9.8: Qualitative Description of a System with High Dexterity (reproduced from [48]). 9.6.3 Manipulability In [48], a quantitative measure of dexterity is obtained from consideration of qualitative descriptions of a system with high dexterity. Table 9.8, which lists these qualitative descriptions, in reproduced from this work. Based on this table the authors propose the formula A 4 •* (ndof)( frequency) / Q 1 Q O ^ dexterity = — :—r (9.139) (resolution) (note: natural frequency gives the upper limit on speed.) A dexterous hand will handle and manipulate an object well (e.g. fine manipulation), and in this regard the above formula is valid since higher speed (and therefore bandwidth), higher resolution and a larger number of degrees of freedom will all increase the ability of the hand to manipulate objects effectively. Chapter 9. Grasping Dexterity 154 Equations 9.137 and 9.139 exhibit clear similarities. In Equation 9.137, the GR in-creases with number of degrees of freedom of the hand, since the increased conformabil-ity characteristics improve the chances of achieving successful grasps. In both equations higher speed of the hand returns a higher dexterity measure. As far as resolution is concerned, this tends to influence manipulation to a greater extent than it does grasping, and is hence not reflected in Equation 9.137. 9.6.4 Dexterity vs. Intelligent Grasping Grasping Dexterity has been denned as the ability of the hand to achieve successful grasps under a wide variety of situations in the shortest possible time. The clause under a wide variety of situations may be interpreted and/or approached in a number of different ways: (i) Optimization of Mechanical Design The properties of the hand (e.g. ndof, link lengths, initial link positions, motor speeds) are designed such that the greatest number of different objects under the greatest variety of possible conditions can be successfully grasped. (ii) Off-Line Adjustment Provisions are made for easy adjustment of certain hand parameters (e.g. initial link positions, switching sequences, initial/grasping speed), so that in a situation where the given hand-object configuration would result in an unsuccessful grasp, the operator of the hand would adjust the settings such that a successful grasp could be achieved. In this way the overall versatility of the hand, as well as, perhaps, its dexterity, is increased. (iii) Intelligent Grasping A knowledge base is incorporated into the system, and the adjustable hand parame-ters could be selected for most effective grasping based on information received through sensing (e.g. vision) at the initiation of each grasping process. This intelligence could be in the form of either (i) a Rule-base, where certain preset rules would be triggered off, Chapter 9. Grasping Dexterity 155 based on sensor information, to set the hand parameters; (ii) a Model-base, where any object being grasped would be classified into one of a relatively small number of pre-stored models, based on sensor information and the measurement and/or computation of certain key object attributes, and the hand parameters set accordingly; or (iii) a neural network, which could be trained such that when object information (sensor inputs) is fed into the system the correct hand parameter settings could be output. The training phase in a knowledge-based system would involve a period of learning, with the shape of the learning curve depending on the knowledge-base approach used. A larger number of models in a model-based approach, or a larger number of input-output sets in a neural network approach, could lengthen the learning process but may result in a more intelligent hand once the learning period has been completed. If a particular model or set of inputs occurs more frequently than the rest, the learning rate for that particular class of objects would exceed the general learning rate of the hand. Incorporation of intelligent grasping capability to the hand would cause its dexterity to improve with time during the learning phase, and would represent the achievement of yet another similarity between the mechanical hand and its human counterpart. 9.7 Discussion II: Human vs. Mechanical System Dexterity As has been implied a number of times throughout this thesis, the human hand is gener-ally considered to be a highly effective gripper, and represents that which most dexterous mechanical hands attempt to mimic, either directly (in anthropomorphic designs) or by means of some substitute approach (in non-anthropomorphic designs). The closer we get to achieving that which we conceive to be human-comparable dexterity, the closer we feel to the ultimate mechanical design. Some conceptual questions need to be considered here. First of all, is the human hand Chapter 9. Grasping Dexterity 156 the perfect gripper? It is certainly effective, but might not an extra finger, or an extra thumb, or perhaps four joints per finger, rather than three, make it even more so? It is also possible that a design along entirely different lines may be capable of matching or even surpassing the human hand in dexterity. Secondly, to what extent does the human hand depend on external senses, such as vision, and on knowledge and mental ability for its dexterity? A sighted human being depends a lot on visual input for effective use of his or her hand. Although a blind person can compensate to a great extent for lack of vision, and even increase the acuity of some of the other senses, the ability to immediately assess an object through vision, and to therefore approach, grasp and hold it in a certain way, cannot be reproduced. Knowledge also plays a major part in dexterity. If we did not know that an egg was fragile, for example, we might very easily impart excessive forces on our first attempt to grasp it, and hence destroy it. Finally, it is worth noting the contribution of mental ability to dexterity. It is well known that two persons may exhibit vastly differing dexterity in performing the same job, even though they may both have identical hand "design", vision input, knowledge and experience. There therefore clearly exists a quality, that may perhaps be referred to as "mental dexterity", that is not just a measure of knowledge and experience but includes also a measure of the mental ability to coordinate these attributes effectively. The mechanical equivalent of this mental ability is the ability of the control system of the hand to utilize and apply its knowledge and external sensory inputs effectively. It may therefore be more appropriate to talk of overall system dexterity, rather than simply hand dexterity. One way to model the system could be as follows. Hand Dexterity would be defined as a measure of the hand mechanical design prop-erties and hand-installed sensing capabilities, as well as of the degree to which these attributes can potentially harmonize for effective grasping and manipulation. External Chapter 9. Grasping Dexterity 157 Control System Dexterity would be defined as a measure of the knowledge-base and ex-ternal sensing capabilities, as well as of the ability to utilize and apply these assets in an effective manner. Overall System Dexterity could then be defined as the product of the Hand and External Control System dexterities. Chapter 10 Conclusions and Future Work 10.1 Introduction In this final chapter, the manner in which the objectives of this research were accom-plished is summarized. This is followed by a discussion of some ideas for future work in the area. Finally, in the concluding section, the general contributions of this work are restated. 10.2 Accomplishments The main accomplishments registered during the course of this research are listed below: • A conformable robotic gripper that utilizes a lesser number of actuators than it has degrees of freedom has been designed, constructed and demonstrated. • A novel friction-switching device has been designed, built and tested in an actual application, and has proven to be effective. • A detailed analysis of planar grasping has been carried out and better predictions regarding the grasp can be made. The analysis concerns grasping by four and six-link grippers, and has been carried out for the two cases of sequential and simultaneous link motion. • The equations for frictional force and torque that act on a solid, uniform cylinder during combined translational and rotational motion on a flat, horizontal surface 158 Chapter 10. Conclusions and Future Work 159 have been derived and developed. • Four versatile simulation programs, based on the analysis described above, have been written and tested extensively. The programs can be used to simulate planar grasping of cylindrical objects for a wide variety of initial and prevailing conditions. • A series of grasping experiments was carried out using the prototype hand. Agree-ment between experimental and simulated results was satisfactory, and the analysis and simulation programs were therefore validated. • The influences of various hand and object parameters on the planar grasping process have been investigated and discussed. These results serve as a first step in the establishment of design criteria for grippers where the object to be grasped rests on a flat, horizontal surface. • An empirical measure for Grasping Dexterity of a gripper has been proposed. The measure can be used to evaluate and compare different hands with respect to versa-tility and speed in grasping, and to ultimately design a hand with the best possible all-round grasping capability (i.e. highest grasping dexterity). 10.3 Future Work The work done in this thesis opens a number of avenues for further research. Some of these are briefly discussed in this section. Future work on the end effector can be directed towards its development on three broad fronts. First, in a revised general design layout of the gripper, the actuators and switching units can be moved to a remote location, and the required torques (motions) transmitted to the gripper joints through a system of flexible cable drives. This will allow the gripper weight and size to be significantly reduced, at the expense of some Chapter 10. Conclusions and Future Work 160 increase in complexity. Second, the extension of the present prototype to the case of three or more links (degrees-of-freedom) per actuator can be investigated. Successful realisation of this modified design will greatly enhance the capability of the gripper to conform to the more complex objects, and will also increase the probability of achieving force or form closure grasps. Third, more extensive sensing capability can be added to the hand. Shaft encoders can be incorporated into the joint design so that the actual configuration of the gripper can be monitored. This information can be used to help identify the object, or its orientation within the grasp, and also can be used in feedback control of the hand. Better tactile sensing capability can also be added to the links to provide more information about the grasped object and to detect or even predict slip. Furthermore, incorporation of a knowledge-base would give the gripper the capability of using intelligence in grasping. Work may also be carried out on the development of the friction-switching mech-anism as a separate entity. Following the implementation of the design improvements discussed in the thesis, the characteristics of the mechanism could be investigated both experimentally and analytically. The grasping analysis given in this thesis may be extended to incorporate actuator dynamics, link and object flexibility, and impact response characteristics; analysis of the grasping of objects with non-zero initial velocities; and investigation of the effects on grasp dynamics and stability of utilizing a general number n of links. This can be followed by analyses of the grasping of differently or arbitrarily shaped objects, and by an extension of the analysis to three-dimensional grasps. With respect to Grasping Dexterity analysis, much work remains to be done. In this thesis, an empirical measure was proposed, and an example to illustrate its use was given. For any particular type of hand, this exercise may be repeated for various hand param-eters until optimum values of these parameters (i.e. for maximum grasping dexterity) Chapter 10. Conclusions and Future Work 161 are found. These results can be compared to other results from similar exercises using different types of hands (e.g. sequential vs. simultaneous link motion, varying number of degrees of freedom). Such a project could yield interesting results, for example: • an optimum number of degrees of freedom for a planar gripper, with a particular ratio of link lengths, could be found for maximum grasping dexterity. • an approximative formula for grasping dexterity, in terms of the hand parameters under investigation, could be arrived at empirically. The analysis may also be linked with separate or complimentary analysis of overall dexterity of a mechanical hand. 10.4 Conclusion In this thesis, a number of aspects regarding robotic grasping have been explored. The general contributions of this work have been the introduction of a gripping device exhibit-ing certain innovative features; the presentation of detailed analyses of planar grasping; the development of versatile and experimentally validated grasping simulation programs; and an analysis and discussion of robot gripper dexterity. It is hoped that the results obtained in this research may serve as a foundation for further projects in this area. Graphs Graphs (Please refer to Chapter 8) Part I: (Graphs 01-06): A Typical Simulation Run. Part II: (Graphs 07-11): Trends Obtained from Simulation Part III: (Graphs 12-15): Experimental Results. Part I: A Typical Simulation Run. PALM' WIDTH 80. .0 LOWER LINK LENGTHS 80. .0 UPPER LINK LENGTH 100. .0 RH FINGER OFFSET 10. .0 LH FINGER OFFSET 10, .0 PALM OFFSET 10, .0 ALPHA A (INITIAL) 65, .0 ALPHA B (INITIAL) 115, .0 ALPHA C (INITIAL) 15, .0 ALPHA D (INITIAL) -15, .0 S PINION NO OF TTH 30, .0 L PINION NO OF TTH 48, .0 The Input File HANDHARD for Sim. 01 object radius 40. 0 object x p o s i t i o n 55. 0 object y p o s i t i o n 70. 0 motor 1 ang. v e l . 12. 48 motor 2 ang. v e l . 8 . 32 time increment 0. 001 f r i c coef o b j - l i n k 0. 4 f r i c coef obj-surf 0. 2 thread torque rh 0. 05 thread torque l h 0. 05 f i n g e r force l i m . rh 30 i.O f i n g e r force l i m . l h 30 .0 object density 2700. 0 object height 15 . 0 The Input File HANDINPT for Sim. 01. Graphs OBJECT X-POSITON (mm.). Graphs Graphs 03, 04, 05 and 06: Contact Forces vs. time for Sim. 01. G R A P H 0 3 . ( S I M U L A T E D ) G R A P H 0 4 . ( S I M U L A T E D ) W i v » . T i m * tmr « m . O l , a. 2 G R A P H 0 5 . ( S I M U L A T E D ) FNO vw. T i m - tar I r n . 0 1 . G R A P H 0 6 . ( S I M U L A T E D ) Graphs Part II: Trends Obtained from Simulation For each set of results in Graphs 7 to 10, the input files HANDHARD and HANDINPT are identical to the files used in Sim. 01 (ref. Part I), except for the particular parameter which is under investigation in each case. For Graph 11, object initial position is as described in Section 8.2.2. Graphs Graph 07: Final Angular Position vs. ps. FRICTION COEFFICIENT WITH SURFACE. Graph 08: Final Angular Position vs. fi^. FRICTION COEFFICIENT WITH LINK. Graphs 168 Graph 09: Final Angular Position vs. Radius. 10 3 0 5 0 O B J E C T RADIUS ( m m . ) Graph 10: Final Angular Position vs. Mass. ie -1 5 -1 4 -1 3 -1 2 -t 11 -z o 1 0 -1 9 -0. 8 -\ 7 -o 8 -i i 3 -i c 4 -3 -2 -1 -0 -0 0 . 2 0 . 4 0 . 8 O B J E C T M A S S (kg . ) Graphs Graph 11: Grasp Stability for Two-Link Contact. O B J E C T RADIUS ( m m . ) . Graphs 170 Part III: Experimental Results. Graph 12: y and 9 vs. x for Experiment No. 3. 6 0 -i : :  5 4 -i 1 1 1 1 1 r 3 5 4 5 5 5 6 5 O B J E C T X - P O S I T I O N ( m m . ) . PALM WIDTH 80.0 LOWER LINK LENGTHS 80.0 UPPER LINK LENGTH 100.0 RH FINGER OFFSET 10.0 LH FINGER OFFSET 10.0 PALM OFFSET 10.0 ALPHA A (INITIAL) 64.00 ALPHA B (INITIAL) 116.87 ALPHA C (INITIAL) 0.0 ALPHA D (INITIAL) 0.0 S PINION NO OF TTH 30.0 L PINION NO OF TTH 4 8.0 object radius 25.4 object x p o s i t i o n 65.77 obj e c t y p o s i t i o n 54.48 motor 1 ang. v e l . 12.48 motor 2 ang. v e l . 12.48 time increment 0.001 f r i c coef o b j - l i n k 0.31 f r i c coef o b j - s u r f 0.31 thread torque rh 0.004 thread torque l h 0.013 f i n g e r force l i m . rh 30.0 f i n g e r force lim. l h 30.0 object density 2700.0 object height 25.4 HANDHARD and HANDINPT for Graph 12 Simulation. Graphs 171 Graph 13: Final Angular Position vs. Radius. O B J E C T RADIUS ( m m . ) . Graph 14: Final Angular Position vs. Mass. O B J E C T M A S S ( k g . ) . Graphs Graph 15: Final Angular Position vs. p.s. FRICTION COEFFICIENT WITH SURFACE. Plates and Drawings Plates and Drawings. (Please refer to Chapter 3) Part I: Assembly and Sub-Assembly Plates Part II: Friction-Switch, Sectional Drawing Part III: Individual Part Drawings Part IV: Hand Electrical Circuit Part V: Parts Index Plates and Drawings 174 Part I: Assembly and Sub-assembly Plates Plate 1: The Robot Gripper, Plan View. Plates and Drawings 175 Plate 2: The Robot Gripper, Side View. Plate 3: The Friction Switches and Transmissions. Plates and Drawings Plate 5: Pinion 2 Sub-Assembly (A2). Plate 7: Pivot 1 Sub-Assembly (A4). PJates and Drawings 178 Plate 8: Pivot 2 Sub-Assembly (A5). Plates and Drawings 179 Part II: Friction-Switch, Sectional Drawing Drawing I: Friction-Switch, Sectional Drawing. Plates and Drawings 180 Part III: Individual Part Drawings Dimensions in mm. unless otherwise indicated. 160 6 35 (0.0) ! 110.11) 4 W O ) (10,21) i 12..1B) I (10.196) 4 (6B,H)V I|92,H) (120,10) i (150.11) 1 1 5 0 , 2 1 ^ ^ ' ^ 5 8 , 1 6 ) I i (61,90) I 11 u . (102,16) i (96,90) I (80,118) (60,176) I 1136,1.8) - C S -(150,196)^ r-- • A L L HOLES l /ff 'B <^3> A L L SLOTS S A M E D I M E N S I O N S --UK-PI Drawing II: Base Plate. Plates and Drawings 181 L 20 i p j j _ ! cw.il) J40,10) (75,5)/ D imens ions in m m . unless otherwise ind icated. 160 i 6.35 n no,2ti I6i;3)^ 3 i 121.181 • - C D - 4 " 158,46) (55,83) 164,90)1 -0-! (73,97) (85,5) ( 3 2 - U > ^ 9 9 , 2 3 ) _^I120,10) ii5o,iir^P~ i 1 1 5 0 , 2 4 ^ ^ , . c z I (1U. (102,46) I (136,48) I .1105,83) 0 (95,90) 1 T K 180.148) i I 110,196) •0-i (80,178) ^180^196) [150,196)^ -0— ALL HOLES 1/B"B Vy f-^P^V- ALL SMALL SLOTS SAME DIMENSIONS ^ H 4 h P 2 Drawing III: Cover Plate. Plates and Drawings 182 Dimensions in mm. unless otherwise indicated. M3 THREAD I 2B 11 _ t 1/8"B 50 P3 12.5 P4 1/8" Drawing IV: Pinion 1 Shaft Sub-Assembly Parts. Plates and Drawings 183 Dimensions in mm. unless otherwise indicated. -mt 35 57 P7 1/B"I M3 THREAD Drawing V: Pinion 2 and Idler Shaft Sub-Assembly Parts. Plates and Drawings 184 Dimens ions in m m . unless otherwise ind ica ted . M3 THREAD U *J J n 1=3 I 11 L_ I \ 3/16-P 1 2 M3 THREAD I , u i n 3t P 1 3 -3/16". 2J 12 9 P 1 4 3/16"8 P 1 5 P 1 6 P 1 7 Drawing VI: Pivots 1 and 2 Shaft Sub-Assembly Parts. Plates and Drawings 185 Dimens ions in mm. unless otherwise ind icated. ' i _ C O lo ft J _ . CO 4 - — f -i • i i • i j 1 0 -> — i f 24 , , 25 . T C 3 P 1 8 Drawing VII: Right-Hand Jaws. Plates and Drawings 186 Dimensions in mm. unless otherwise indicated. r ft •LL jji. it ""I I*-10 -H 21. 25 3 P 2 0 ft U Hi P 2 1 Drawing VIII: Left-Hand Jaws. Plates and Drawings 187 Dimens ions in mm. unless otherwise ind ica ted . 1/1" THREAD -2 P 2 2 16mm THREAD B B U - U U L M ^ 37 16mm THREAD INTERNAL TAPERED THREAD  I H K t A U / 20 40 P 2 3 P 2 4 BO <•=> 2 mm THREAD . T 52 6 . 13 P 2 5 EXTERNAL TAPERED THREAD 10 P 2 6 20 Drawing IX: Screw Assembly Parts. Plates and Drawings 188 Dimens ions i n mm. unless otherwise indica ted . HORIZONTAL GROOVES (to mesh with IB DP gear] 16mm INTERNAL THREAD j o E --A _ " I i j . | .5 , | 50 — P 2 7 —|| |— 1/ffB KEYWAY P 2 8 Drawing X: Screw Cap and Coupling. Plates and Drawings 189 M3 INTERNAL THREAD (I locations) P 3 3 Drawing XI: Brackets and Supporting Blocks. Plates and Drawings 190 Dimens ions i n mm. unless otherwise ind ica ted . -1. > — c b — i i - 22 „ 26 M 3 INTERNAL THREAD locations) P34 Drawing XII: Limit Block, Covers and Motor Support. Plates and Drawings 191 Part IV: Hand Electrical Circuit T h i a i k o l d S e t t i n g EC + S V • - 1-WWWW I + I + L M 3 1 - K 1 0 . K - w -L M 3 3 r 4 > " 1 . K + 5 V A I 1 -rWvVWvVVvV-1_ Finger 2 t > 1 0 . K + S V 1 > 1 0 . K l n d i M i 3 IBM/PS 2 S e i i . i p ' o n Host Computer Digital Output Drawing XIII: Hand Electrical Circuit. Plates and Drawings Part V: Parts Part No. Part Description PI Base Plate P2 Cover Plate P3 Shaft (Pinion 1) P4 Spacer (Pinion 1) P5 Pulley (Pinion 1) P6 Spacer (Pinion 1) P7 Shaft (Pinion 2, Idler) P8 Spacer (Pinion 2) P9 Spacer (Idler) P10 Sleeve (Pinion 2) P l l Pulley (Idler) P12 Shaft (Pivot 1) P13 Shaft (Pivot 2) P14 Idling Pulley (Pivot 1) P15 Pulley (Jaw) P16 Spacer (Pivot 1) P17 Spacer (Pivot 1) P18 Right-Hand Lower Jaw P19 Right-Hand Upper Jaw P20 Left-Hand Lower Jaw P21 Left-Hand Upper Jaw 192 Index Material Qty. Plt./Dwg. Aluminium 1 l/II Plexiglass 1 -/III Stainless Steel 2 4/IV Aluminium 2 4/IV Aluminium 2 4/IV Aluminium 2 -/IV Stainless Steel 4 5,6/V Aluminium 2 5/V Aluminium 2 6/V Stainless Steel 2 5/V Aluminium 2 6/V Stainless Steel 2 7/VI Stainless Steel 2 8/VI Aluminium 2 7/VI Aluminium 4 7,8/VI Aluminium 2 7/VI Aluminium 2 -/VI Plexiglass 1 1/VII Plexiglass 1 1/VII Plexiglass 1 1/VIII Plexiglass 1 1/VIII es an d Drawings 193 P22 Axle (Screw Assy.) Stainless Steel 2 -/I,IX P23 Worm Gear Brass 2 -/I,IX P24 Screw Rubber 2 3/I,IX P25 Setting Rod (Screw Assy.) Stainless Steel 2 -/I.IX P26 Tapered Plug (Screw Assy.) Brass 2 -/I,IX P27 Screw Cap Brass 2 3/I.X P28 Screw Cap Shank Brass 2 - / X P29 Coupling Nylon 2 1/X P30 Front Bracket Aluminium 1 3/XI P31 Front Supporting Block Nylon 1 1/XI P32 Rear Bracket Aluminium 1 3/XI P33 Rear Supporting Block Nylon 1 1/XI P34 Limit Block Nylon 2 1/XII P35 Cover Plexiglass 4 -/XII P36 Motor Support Nylon 1 1/XII P37 Pinion 1 Gear Plastic 2 4/-P38 Pinion 2 Gear (Boston Gear Cat. No. Y4848) 2 5/-P39 Timing Belt (Boston Gear Cat. No. 3M069090) 2 3/-P40 Timing Belt Pulley (Boston Gear Cat. No. PA3018DF060) 2 5,6/-P41 Lower Link Cable Steel 2 3/-P42 Idler Cable Steel 2 3/-P43 Upper Link Cable Steel 2 V-P44 Stepper Motor (Superior Electric MO61-CE08) 2 11-Bibliography [1] Allen, P.K. et al "An Integrated System for Dexterous Manipulation" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 612-617, IEEE Computer Society Press, 1989 [2] Asada, H. and Kitagawa, M. "Kinematic Analysis and Planning for Form Clo-sure Grasps by Robotic Hands" Robotics and Computer-Integrated Manufacturing, v5,n4,pp29S-299, 1989 [3] Beer, F.P. and Johnston, Jr., E.R. "Vector Mechanics for Engineers: Statics and Dynamics (3rd Edition)" McGraw-Hill, 1977 [4] Bertram, H. and Appleby, J. "Robot Gripper" EIST Project Reports, University of Cambridge, 1991 [5] Bicchi, A., Salisbury, J.K. and Dario, P. "Augmentation of Grasp Robustness using Intrinsic Tactile Sensing" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 302-307, IEEE Computer Society Press, 1989 [6] Bologni, L. "Robotic Grasping: How to Determine Contact Positions" IFAC Robot Control Conference, Karlsruhe, FRG, 1988 [7] Bonivento, C. et al "Control System Design of a Dexterous Hand for Industrial Robots" IFAC Robot Control Conference, Karlsruhe, FRG, 1988 [8] Brock, D.L. "Enhancing the Dexterity of a Robot Hand using Controlled Slip" M.S.M.E. Thesis MIT May 1987, and MIT Al Technical Report AI-TR-992, Oct. 194 Bibliography 195 1987 [9] Brock, D.L. "Enhancing the Dexterity of a Robot Hand using Controlled Slip" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 249-251, Philadelphia, April 1988 [10] Cole, A., Hauser, J., and Sastry, S. "Kinematics and Control of Multifingered Hands with Rolling Contact" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 228-233, Philadelphia, April 1988 [11] Cutkosky, M. et al "Grasping as a Contact Sport" International Society of Robotics Research, Aug. 1987 [12] Cutkosky, M. and Kao, I. "Computing and Controlling the Compliance of a Robotic Hand" IEEE Transaction of Robotics and Automation, 5(2):151-165, April 1989 [13] de Silva, C.W. "Control Sensors and Actuators" Prentice-Hall, 1989 [14] Doll, T.J. and Schneebeli, H.J. "The Karlsruhe Hand" IFAC Robot Control Con-ference, Karlsruhe, FRG, 1988 [15] Engelberger, J.F. "Robotics in Practice" Kogan Page, 1980 [16] Fearing, R.S. "Simplified Grasping and Manipulation with Dexterous Robot Hands" IEEE Journal of Robotics and Automation, Vol RA-2, No. 4, Dec 1986b [17] Fowler, H.W. and Fowler, F.G. "The Concise Oxford Dictionary of Current En-glish" Oxford, Clarendon Press, 1987 p 263 [18] Fu, Gonzales and Lee "Robotics: Control, Sensing, Vision and Intelligence" McGraw-Hill, 1987 Bibliography 196 [19] Gopalswamy, S. and Fearing, R.S. "Grasping Polyhedral Objects with Slip" Pro-ceedings of the IEEE International Conference on Robotics and Automation, vl, pp 296-301, IEEE Computer Society Press, 1989 [20] Howe, R.,Kao, I. and Cutkosky, M. "The Sliding of Robot Fingers Under Combined Torsion and Shear Loading" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 103-105, Philadelphia, April 1988 [21] Howe, R.D. and Cutkosky, M.R. "Sensing Skin Acceleration for Slip and Texture Perception" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 145-150, IEEE Computer Society Press, 1989 [22] Hsu, P., Li, Z. and Sastry, S. "On Grasping and Coordinated Manipulation by a Multifingered Robot Hand" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 384-389, Philadelphia, April 1988 [23] Hui, R.C. and Goldenberg, A.A. "Modelling the Manipulation of Rigid Objects as a Singular System" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 240-244/ Philadelphia, April 1988 [24] Iberall, T. et al "Knowledge-Based Prehension: Capturing Human Dexterity" Pro-ceedings of the IEEE International Conference on Robotics and Automation, vl, pp 82-81, Philadelphia, April 1988 [25] IFS Publications and Springier-Verlag "Robot Sensors Vol 2: Tactile and Non-Vision" edited by Alan Pugh, 1986 [26] Jacobsen, S.C. et al "Design of the Utah/MIT Dexterous Hand" Proceedings of the IEEE International Conference on Robotics and Automation, v3, pp 1520-1532, San Francisco, April 1986 Bibliography 197 [27] Kato, I. "Mechanical Hands Illustrated" Survey Japan, 1982 [28] Kao, I. and Cutkosky, M. "Quasistatic Sliding Manipulation - On the Transient Response of Sliding Manipulation" Proceedings of the IEEE Int. Symposium on Intelligent Control, 1989 [29] Kenaley, G.L. and Cutkosky, M.R. "Electrorheological Fluid-Based Robotic Fingers with Tactile Sensing" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 132-136, IEEE Computer Society Press, 1989 [30] Koehler, T. and Donath, M. "Inverse Kinematics for a Multi-Fingered Hand" Pro-ceedings of the IEEE International Conference on Robotics and Automation, vl, pp 234-239, Philadelphia, April 1988 [31] Lu, L. and Soni, A.H. "A Method for Dexterity Analysis of Robot Hands" Pro-ceedings of the USA-Japan Symposium on Flexible Automation, pp 507-553, Min-neapolis 1988 [32] Lu, L., Cai, C. and Soni, A.H. "Object Oriented Dexterity Analysis and Design Application for Spatial Robot Hands" 15th ASME Design Technology Conferences, Kissimmee, FL, 1989 [33] Lu, L., Cai, C. and Soni, A.H. "The Characteristics of Dexterity Charts for Spatial Robot Hands with Two Fingers" ASME Design Technical Conference, Montreal 1989 [34] Markenscoff, X. et al "The Geometry of Grasping" The International Journal of Robotics Research, v9, nl, Feb. 1990 [35] Mason, M.T. and Salisbury, J.K. "Robot Hands and the Mechanics of Manipula-tion" MIT Press, 1985 Bibliography 198 [36] Masory,0. et al "A 2-DOF Active Compliant Gripper for Robotic Applications" Journal of Mechanical Working Technology, 20 (1989) 315-327 [37] Micallef, R. "Choosing Robot Grippers for Cylindrical Parts" Tooling and Produc-tion v55,n7,Oct.l989 Pp50-51, 53-54 [38] Montana, D.J. "The Kinematics of Contact and Grasp" The International Journal of Robotics Research, v7,n3, June 1988 [39] Murray, R.M. and Sastry, S.S. "Control Experiments in Planar Manipulation and Grasping" Proceedings of the IEEE International Conference on Robotics and Au-tomation, vl, pp 624-629, Philadelphia, April 1988 [40] Nahon, M.A. and Angeles, J. "Optimization of Dynamic Forces in the Design of Mechanical Hands" 15th ASME Design Technology Conferences, Kissimmee, FL, 1989 [41] Pettinato, J.S. and Stephanou, H.E. "Manipulability and Stability of a Tentacle Based Robot Manipulator" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 458-463, IEEE Computer Society Press, 1989 [42] Rakic, M. "Multifmgered Robot Hand with Selfadaptability" Robotics and Computer-Integrated Manufacturing v5, n2/3, pp 269-276, 1989 [43] Rovetta, A. and Tanie, K. "Grasping in Nature and in Robotics: A Parallel Logical Concept" Bulletin of Mechanical Engineering Laboratory (Sakura-mura) n51, 1989 [44] Saliba, M.A. "The Design and Construction of a Pneumatic, Limited Sequence Robot Arm" B.Mech.Eng. (Hons) Final Year Thesis, University of Malta, 1986 Bibliography 199 [45] Saliba, M.A. and de Silva C.W. "Dynamics of Robotic Grasping" 2 n d ASME North-west International Region VIII Graduate Student Technical Conference, Seattle, April 1991 [46] Saliba, M.A. and de Silva, C.W. "An Innovative Robotic Gripper for Grasping and Handling Research" International Conference on Industrial Electronics, Control and Instrumentation, Kobe, Japan, 1991 [47] Schoenwald, J.S. et al "End Effector Actuation with a Solid State Motor" Pro-ceedings of the IEEE International Conference on Robotics and Automation, vl, pp 108-1 IS, Philadelphia, April 1988 [48] Sturges, R.H. and Wright, P.K. "A Quantification of Dexterity" Robotics and Computer-Integrated Manufacturing 6: 3-14, 1989 [49] Sturges, R.H. "A Quantification of Manual Dexterity: The Design for an Assembly Calculator" Robotics and Computer-Integrated Manufacturing, v5,n3, 1989 [50] Sturges, R.H. "Task/Effector System Models of Dexterity for Machine Assembly" IEEE Int. Symposium on Intelligent Control, 1989 [51] Trinkle, J.C. "Grasp Acquisition using Liftability Regions" Proceedings of the IEEE International Conference on Robotics and Automation, vl, pp 88-93, Philadelphia, April 1988 [52] Ulrich, N., Paul, R. and Bajcsy, R. "A Medium Complexity Compliant End Effec-tor" Proceedings of the IEEE International Conference on Robotics and Automa-tion, vl, pp 434-4 36, Philadelphia, April 1988 [53] Wright, P.K., Demmel, J.W. and Nagurka, M.L. "The Dexterity of Manufacturing Hands" Robotics Research 1989 Appendix A Gripper Manual A . l Operating Instructions 1. Set up all connections as shown in Drawing XIII. For indexer to motor connections refer to the appropriate indexer manuals (Superior Electric 230-IH for Indexer 1 and 230-TOH for Indexer 2). 2. Make sure that the files CONTROL.BAS, PARAM.DAT and 812BAS.BIN are in the same computer drive directory. CONTROL.BAS is the main program, written in BASIC, which controls and operates the hand, while PARAM.DAT is a data file containing indexer parameter codes. 812BAS.BIN is the PCL812 data acquisition card basic driver. 3. Load and run the basic program CONTROL.BAS. The main menu, indicating the four available options, will appear on the computer monitor. These options are (1) Finger 1 Operation, (2) Finger 2 Operation, (3) Fingers 1 and 2 Operation, and (4) Exit Program. 4. Turn on all power to the hand circuitry. 5. Select the required item from the main menu. This will cause initialization of the selected motor indexer(s), and messages indicating that this has occurred will ap-pear on the monitor. If initialization is successful, the final part of the display will 200 Appendix A. Gripper Manual 201 read as follows: USE SPACEBAR TO START AND STOP MOTOR(S) USE 'R' TO REPEAT SAME DIRECTION USE 'Z' TO EXIT TO MAIN MENU 6. Click the spacebar to start actuation of the motor(s). Finger(s) will start to close and conform to the object. Motor motion stops when (i) the spacebar is depressed again, or (ii) contact force in the outer link reaches a preset magnitude (this will only cause the appropriate motor to stop). C A U T I O N : IF F O R A N Y R E A S O N T H E O U T E R LINK F O R C E SEN-SORS A R E N O T T R I G G E R E D , M O T O R M O T I O N W I L L N O T S T O P A U T O M A T I C A L L Y A N D D A M A G E WILL B E D O N E T O T H E H A N D M E C H A N I S M W H E N LINK M O T I O N S B E C O M E C O N S T R A I N E D . IN P A R T I C U L A R , W H E N T H E R E IS NO O B J E C T T O B E G R A S P E D , M O T O R M O T I O N M U S T B E S T O P P E D USING T H E S P A C E B A R . 7. Click the spacebar once more to start motor actuation in the opposite direction. Finger(s) will start to open back to their original position(s). Motor motion stops when (i) the spacebar is depressed again, or (ii) fmger(s) reach fully-open configu-ration. 8. At any time when the motors are stationary, depressing 'R' will cause motors to repeat previous direction on pressing spacebar. Appendix A. Gripper Manual 202 9. To power down windings and exit to the main menu, depress 'Z' when motors are stationary. A.2 Parameter Settings The following hand operation parameters can be set off-line: 1. Link Initial Angles. Link initial angles can be set by adjusting the positions of the limit blocks (Parts P34). 2. Link Switch-Over Torques. Link switch-over torques may be set by rotating the top of the thin rods (Parts P25) in the friction switching mechanisms. These settings require removal of the plexiglass cover, and may be affected using a small set of long-nosed pliers. 3. Outer Link Force Limits. Outer link force limits can be set by adjustment of the threshold setting poten-tiometer in the outer link force sensing circuitry (Drawing XIII). 4. Motor Operation Parameters. Speed and acceleration/deceleration rates for Motor 1 can be set by varying the data in the file PARAM.DAT. For Motor 2, these parameters are set by adjustment of the appropriate potentiometers located on Indexer 2 board. Appendix A. Gripper Manual 203 A.3 Specifications Overall Dimensions (open hand): Palm Width: Lower link lengths: Upper link lengths: Link Offset Distance: Palm Offset Distance: Gear Reduction (lower link): Gear Reduction (upper link): Mass: Max. Power Consumption: 418 X 195 X 60mm. 80mm. 80mm. 100mm. 10mm. 10mm. 30 48 2.7kg. 40W A.4 Component Information Host Computer: Data Acquisition Board: Indexer 1: Indexer 2: Stepper Motors: Pressure Sensor Circuitry: Linear Potentiometer: Buffers: Comparators: IBM PS2 PC-Labcard PCL-812 Superior Electric 230-IH Superior Electric 430-TOH Superior Electric M061-CE08 Interlink Electronics Motorola LM324 Motorola LM393 Appendix A. Gripper Manual 204 A.5 Control Program Listing A listing of the gripper control program CONTROL.BAS is given overleaf. This program is explained in detail in Section 3.5.4 of this thesis. litish/users/saliba/control.baa 20fy ft 10 REM THIS PROGRAM STARTS AND STOPS BOTH MOTORS 20 REM INDIVIDUALLY OR SIMULTEANOUSLY 30 REM AT PREDETERMINED SPEEDS AND ACCELERATIONS 40 REM 50 ' 60 '»***»**• LOAD PCL812 BASIC DRIVER *»*»«*** 70 • 80 CLEAR, 49152! 90 DEF SEG = 0 100 SG = 256 * PEEK(&H511) + PEEK(&H510) 110 SG = SG + 491521/16 120 DEF SEG = SG 130 BLOAD "812BAS.BIN", 0 140 REM VARIABLE DIMENSIONING FOR INDEXER 2 DRIVER INITIALIZATION 150 DIM DAT%(4) 160 CLS 170 REM 180 REM •••****•***»•••••* START-UP ••***•**••*••• 190 REM 200 REM DISPLAY OPERATION OPTIONS 210 PRINT:PRINT 220 PRINT "<1> FINGER 1 OPERATION" 230 PRINT 240 PRINT "<2> FINGER 2 OPERATION" 250 PRINT 260 PRINT "<3> FINGERS 1 AND 2 OPERATION" 270 PRINT 280 PRINT "<4> END PROGRAM" 290 PRINT:PRINT 300 PRINT "SELECT 1,2,3 OR 4" 310 REM SET OPTION INDICATOR TO 0 320 M=0 330 REM INITIALIZE EXIT INDICATOR Z 340 Z-0 350 REM INITIALIZE FORCE LIMIT INDICATOR 360 F«255 370 REM INPUT SELECTION AND INDEXER/PCL DRIVER INITIALIZATIONS 380 X$-INKEY$:IF XS="" GOTO 380 390 IF X$="l" THEN M-liGOSUB 1100:GOSUB 2010:GOTO 440 400 IF X$="2" THEN M=2:GOSUB 1900:GOTO 440 410 IF X$="3" THEN M=3:GOSUB 1100:GOSUB 1900:GOTO 440 420 IF X$="4" THEN M=3:GOSUB 1690:GOSUB 2010:GOTO 980 430 GOTO 380 440 REM 450 REM 460 REM DISPLAY OPERATING INSTRUCTIONS 470 PRINT "USE SPACE BAR TO START AND STOP MOTOR(S)" 480 PRINT 490 PRINT "USE 'R' TO REPEAT SAME DIRECTION" 500 PRINT "USE 'Z' TO EXIT TO MAIN MENU" 502 REM 503 REM. 504 REM 508 REM ****»»»**»»» COMMANDS TO CLOSE FINGERS •»«*••••****»* 509 REM 510 X$=INKEY$:IF X$="" GOTO 510 515 REM CLOSE FINGER 2 520 IF (M=2) OR (M=3) THEN IF XS=" " THEN DAT=17:GOSUB 2240 525 REM CLOSE FINGER 1 530 IF (M=l) OR (M=3) THEN IF X$=" " THEN FOR 1 = 1 TO 4000:NEXT IsPRINT #1 , CHRS ( 17 ) : PRINT #1,"H07":FOR 1 = 1 TO 25: NEXT 1:01=1 540 IF X$=" " GOTO 580 545 REM POWER DOWN AND EXIT TO MAIN MENU 550 IF X$="Z" OR XS-"z" THEN Z=l:GOTO 980 555 REM REVERSE DIRECTION OF ROTATION 560 IF X$="R" OR X?="r" THEN GOTO 730 570 GOTO 510 574 REM 575 REM ' 576 REM 57B REM «»•**»****»»» STOP CLOSING OF FINGERS «••*••*•«»••»** 57 9 REM 580 X$=INKEY$ 1 585 REM READ SENSOR INPUTS 590 GOSUB 2330 595 REM STOP FINGER 2 IF CONTACT IS MADE 600 IF F-253 OR F-245 OR F=249 OR F=241 THEN DAT=5:GOSUB 2240 605 REM STOP FINGER 1 IF CONTACT IS MADE 610 IF (F=254 OR F=246 OR F-250 OR F=242) AND M<>2 THEN PRINT #1,CHR$(17):PRINT #l,"»":FOR 1=1 TO 25:NEXT I:Ol=0 615 REM STOP BOTH FINGERS IF CONTACTS ARE MADE / Ii i s h / u s e r s / s a l i b a / c o n t r o l . b a s 10H-B 620 IF F=252 OR F=244 OR F=248 OR F=240 THEN DAT=5:GOSUB 2240 630 IF (F=252 OR F=244 OR F=248 OR F=240) AND M<>2 THEN PRINT #1,CHR$(17):PRINT #l,"*":FOR 1=1 TO 25:NEXT I:Ol=0 635 REM IF ALL OPERATING FINGERS HAVE CONTACTED, GOTO NEXT SECTION 640 IF F=252 OR F=244 OR F=248 OR F-240 GOTO 730 650 IF DAT=5 AND Ol=0 GOTO 730 660 IF Ol=0 AND M=l GOTO 730 670 IF DAT=5 AND M=2 GOTO 730 680 IF XS="" GOTO 580 685 REM IF SPACEBAR IS PRESSED, STOP FINGERS AND GOTO NEXT SECTION 690 IF (M=2) OR (M=3) THEN IF X$ = " " THEN DAT=5:GOSUB 2240 700 IF (M=l) OR (M=3) THEN IF X$=" " THEN PRINT #1,CHR$(17):PRINT #l,"*":FOR 1=1 TO 25:NEXT I:Ol=0 710 IF X$=" " GOTO 730 720 GOTO 580 722 REM 723 REM 724 REM 728 REM ************ COMMANDS TO OPEN FINGERS ***«*«»•***»** 730 X$=INKEY$:IF X$="" GOTO 730 735 REM OPEN FINGER 2 740 IF (M-2) OR (M=3) THEN IF X$=" " THEN DAT=19:GOSUB 2240 745 REM OPEN FINGER 1 750 IF (M=l) OR (M=3) THEN IF X$=" " THEN FOR 1 = 1 TO 4000:NEXT I:PRINT #1, CHR$ (17): PRINT #1 , " H06" : FOR 1 = 1 TO 25: NEXT 1:01=1 760 IF X$=" " GOTO 800 765 REM POWER DOWN AND EXIT TO MAIN MENU 770 IF X$="Z" OR XS="z" THEN Z=1:GOTO 980 775 REM REVERSE DIRECTION OF ROTATION 780 IF X$="R" OR X$="r" THEN GOTO 510 790 GOTO 730 7 94 REM i . 795 REM . :" 796 REM 798 REM ************* STOP OPENING OF FINGERS *****•***«*•«»* 799 REM 800 XS=INKEY$ 805 REM READ SENSOR INPUTS 810 GOSUB 2330 815 REM STOP FINGER 1 IF FULLY OPEN CONTACT IS MADE 820 IF F=251 OR F=249 OR F=250 OR F=24B THEN DAT=7:GOSUB 2240 825 REM STOP FINGER 2 IF FULLY OPEN CONTACT IS MADE 830 IF (F=247 OR F=245 OR F=246 OR F=244) AND M<>2 THEN PRINT #1,CHR$(17):PRINT #l,"*":FOR 1=1 TO 25:NEXT I:Ol=0 835 REM STOP BOTH FINGERS IF FULLY OPEN CONTACTS ARE MADE 840 IF F=255 OR F=253 OR F-254 OR F=252 THEN DAT=7:GOSUB 2240 850 IF (F=255 OR F=253 OR F=254 OR F=252 ) AND M<>2 THEN PRINT #1, CHRS ( 1 7 ) : PRINT #l,"*":FOR 1 = 1 TO 25.-NEXT I:Ol = 0 855 REM IF ALL OPERATING FINGERS HAVE OPENED, GOTO NEXT SECTION 860 IF F=255 OR F=253 OR F=254 OR F=252 GOTO 950 870 IF DAT=7 AND Ol=0 GOTO 950 880 IF Ol=0 AND M=l GOTO 950 890 IF DAT=7 AND M=2 GOTO 950 900 IF X$="" GOTO 800 905 REM IF SPACEBAR IS PRESSED, STOP FINGERS AND GOTO NEXT SECTION 910 IF (M=2) OR (M=3) THEN IF X$=" " THEN DAT=7:GOSUB 2240 920 IF (M=l) OR (M=3) THEN IF X$=" " THEN PRINT #1,CHR$(17):PRINT #l,"*":FOR 1=1 TO 25:NEXT I:Ol=0 930 IF XS=" " GOTO 950 940 GOTO 800 950 GOTO 510 960 REM 970 REM 975 REM ************ PROGRAM TERMINATION **************** 976 REM 980 REM TURN MOTOR WINDINGS OFF 990 IF (M=l) OR (M=3) THEN PRINT #1,CHR$(17):PRINT #1,"N001 Hll":FOR 1=1 TO 25:NEXT I 1000 IF (M=l) OR (M=3) THEN PRINT #1,CHR?(17):PRINT #1,"N001 G68":FOR 1=1 TO 25:NEXT I 1010 IF (M=l) OR (M=3) THEN PRINT #1,CHR$(17):PRINT #1,"N001 H01":FOR 1=1 TO 25:NEXT I 1020 IF (M=2) OR (M=3) THEN DAT=4:GOSUB 2240 1030 CLOSE 1035 REM EXIT TO MAIN MENU 1040 IF Z=l GOTO 160 104 5 REM END PROGRAM 1050 END 1060 REM 1070 REM 1080 REM 1090 REM 1092 REM ****************************************************** 1093 REM ************* s U B R O U T I N E S ****************** 1094 REM ****************************************************** 1096 REM 1097 REM 1100 REM THIS ROUTINE SETS UP THE FIRST INDEXER FOR CONTROL litish/users/saliba/cootrol.bas 1110 REM 1120 REM 1130XREM THIS ROUTINE SECTION LOADS THE INDEXER WITH FILE "PARAM.DAT" 1140 KEM AND SETS UP FOR INTERACTIVE COMMUNICATION 1150 REM BETWEEN THE HOST AND INDEXER 1160 REM 1170 REM CONFIGURE SERIAL PORT 1 FOR INDEXER COMMUNICATIONS 1180 REM ItvDEXER SET AT 9600 BAUD, 8 DATA BITS, 2 STOP BITS AND 1190 REM N O ' r A T . I T i . - .. 1200 REM 1210 CLS 1220 PRINT:PRINT 1230 PRINT "INDEXER 1 PARAMETERS ARE AS FOLLOWS:", 1240 OPEN "COM1:9600,N,8,2,LF"AS#1 1250 REM ASSIGN DEVICE NUMBER AS 1 1260 D=l 12 70 REM OUTPUT XON 1280 PRINT#1,CHR$(17); 1290 REM OUTPUT DEVICE CHARACTER AND DEVICE NUMBER 1300 PRINT#1,USING"<#";D 1310 REM RECEIVE EQUAL SIGN,AND XON 1320 G$=INPUT$(2,#1) 1330 REM SET L26 PARAMETER TO 0 1340 PRINT#1, "L26 0" 1350 REM RECEIVE XOFF AND XON 1360 G$=INPUT$(2,#1) 1370 REM OPEN THE DISK FILE TO LOAD INDEXER 1380 OPEN "I",#2,"PARAM.DAT" 1390 REM INITIALISE LINE COUNT 1400 C=0 1410 REM READ PROGRAM LINE FROM DISK 1420 INPUT#2,L$ 1430 REM SEND PROGRAM LINE TO INDEXER 1440 PRINT#1,L$ 1450 REM INPUT XOFF AND XON 1460 G$=INPUT$(2,#1) 1470 REM DISPLAY PROGRAM LINE ON SCREEN 1480 PRINT L$ 1490 REM INCREMENT LINE COUNT 1500 C=C+1 1510 REM GET NEXT LINE IF 8 LINES HAVE NOT BEEN TRANSFERED 1520 I F C<9 THEN GOTO 1420 1530 REM DATA TRANSFER AND STORAGE COMPLETE 1540 PRINT "INDEXER 1 LOADED WITH FILE PARAM.DAT" 1550 PRINT:PRINT 1560 REM CLOSE THE OPEN FILES 1570 CLOSE 1580 REM 1590 REM 1600 REM 1610 REM 1620 REM THIS ROUTINE SECTION SETS UP FOR INTERACTIVE COMMUNICATIONS 1630 REM BETWEEN THE HOST AND INDEXER 1640 REM 1650 REM CONFIGURE SERIAL PORT 1 FOR INDEXER COMMUNICATIONS. 1660 REM INDEXER SET. AT 9600 BAUD, 8DATA BITS, 2 STOP BITS 1670 REM AND NO PARITY. 1680 REM 1690 OPEN "COM1:9600,N,8,2,CS,DS,CD" AS #1 1700 PRINT #1,CHR$(17); 1710 REM SET L26 PARAMETER IN ALL INDEXERS 1720 PRINT #1,"<00L260" 1730 IF X$="4" THEN RETURN 1740 PRINT #1,CHR$(17):PRINT #1,"N001 H l l " : F O R 1=1 TO 25:NEXT I 1750 PRINT #1,CHR$<17):PRINT #1,"N001 G69":FOR 1=1 TO 25:NEXT I 1760 REM CANCEL ALL WINDINGS OFF 1770 PRINT #1,CHR$(17) 1780 PRINT #1,"N001 H01" 1790 REM SET JOG MODE 1800 PRINT #1,CHR$(17) 1810 PRINT #1,"H03" 1820 REM TIME DELAY 1830 FOR 1=1 TO 25 1840 NEXT I 1850 RETURN 1860 REM 1870 REM 1880 REM 1B90 REM 1900 REM THIS ROUTINE SETS UP THE SECOND INDEXER FOR CONTROL /Itish/users/saliba/control.bas 1910 REM 1920 REM 1930 REM T h i s r o u t i n e program uses the PCL-812 d r i v e r FUNC 0, 21 and 22 1940 REM t o w r i t e d i g i t a l data t o output channel DO0 to D015 1950 REM T h i s r o u t i n e needs PCL-812 jumper s e t t i n g as f o l l o w i n g 1960 REM I/O PORT BASE ADDRESS (SW1): HEX 220 1970 IF M=2 THEN CLS 1980 PRINT "INDEXER 2 PARAMETERS ARE AS SET ON THE 1990 PRINT "POTENTIOMETERS R1,R2,R3,R4" 2000 PRINT:PRINT 2010 ' 2020 '******** INITIALIZE DRIVER USING FUNCTION 0 *»*««*** 2030 ' 2040. PORT%=&H220 'SET I/O PORT ADDRESS 2050 DAT*(0)-PORT» 'GET I/O PORT ADDRESS 2060 DAT%(1) - 3 'SELECT INTERRUPT LEVEL 3 2070 DAT%(2) - 1 'SELECT D.M.A. LEVEL 1 2080 PCL812 - 0 'DRIVER SEGMENT OFFSET, DON'T CHANGE 2090 ER% » 0 'ERROR RETURN CODE 2100 FUN* - 0 'FUNCTION 0 2110 CALL PCL812 (FUN*, DAT%(0), ER%) 2120 IF ER*<>0 THEN PRINT "DRIVER INITIALIZATION FAILED I ": STOP 2130 REM 2135 REM IF SELECTION IS 1 OR 4, DO NOT TURN ON MOTOR* 2 WINDINGS 2140 IF X$="l" GOTO 2190 2150 IF XS="4" GOTO 2190 2160 REM TURN MOTOR 2 WINDINGS ON 2170 DAT°5:GOSUB 2240 2180 REM 2190 RETURN 2200 REM 2210 REM 2220 REM 2230 REM 2240 ' 2250 '*•***•«* WRITE DIGITAL OUTPUT USING FUNC 21 »****»«» 2260 ' 2270 FUN% = 21 2280 DAT%(1) = INT(DAT / 256) 2290 DAT%(0) = DAT-DAT%(1)*256 2300 CALL PCL812 (FUN%, DAT%(0), ER%) 2310 IF ER% <> 0 THEN PRINT "PERFORM FUNC 21 FAILED!": STOP 2320 RETURN 2325 ' 2330. '***••*** READ DIGITAL D A T A USING FUNC 22 •**«*•**•*•** 2340 ' 2350 FUN% = 22 2360 CALL PCL812 ( F U N % , D A T * ( 0 ) , ER%) 2370 F - DAT*(0) 2380 RETURN Appendix B Surface Friction Effects - Supplementary Analysis B . l Frictional Force and Torque Equations: Indeterminate Solutions Equations 5.101 and 5.102 are indeterminate when 1 + f2v2 - 2rvcos6 = 0 (B.140) Solving for v in Equation B.140 gives cos 6 \/cos 62 — 1 v= ± - = (B.141 r r A real, non-negative value of v to satisfy Equation B.141 can only exist when cos 6=1. In this case this would give 1 r = — v or v = ruj (B.142) The solutions are therefore only indeterminate at the point defined by 6 = 0 and f = i . B.2 Integration of Friction Force Equation An analytical solution for Ff from Equation 5.124 cannot be obtained for 6 = 0 due to the singularity at f = 4 on this line. In order to obtain a numerical solution to Equation 5.124, the analytical solutions for the f integration are calculated for incremental values of 6 205 Appendix B. Surface Friction Effects - Supplementary Analysis 206 over the whole revolution except for the sector defined by 8 = 0. This sector, of angle 66, is then integrated separately, as follows. The frictional force opposing linear motion that is acting on this sector, from Equa-tion 5.101, is given by rl r(\ — fy~) IF,=2,smg r J o J(l -rv) df 88 (B.143) V(l - rv-y The expression to be integrated is indeterminate when f = | . In order to obtain a value for 8Ff, we select one of two distinct solutions, depending on the value of v, as defined in Cases I and II below. Case I: v > 1 When v > 1, the integral in Equation B.143 is broken down into two integrals as follows: 8Ff = 2/ism.g I (?) r(l — rv) r(l — rv) v ' C i - ™ ) 2 d' ' W v / ( 1 - ^ ) 2 dr 68 (B.144) where denotes a value infinitesmally less than | and (|) denotes a value infinitesmally greater than jr. These terms can now be simplified to give 8Ff = 2ps^g ^ r dr — / Jo J(L) r dr — m r dr 68 (B.145) It should be noted that the second integral now has a negative sign since there has been cancellation between (1 — rv), which is negative, in the numerator and |(1 — rv)\, which is positive, in the denomenator. Integrating Equation B.145 with respect to f gives (B.146) SFf = psmg[ — -l\ 68 Appendix B. Surface Friction Effects - Supplementary Analysis 207 Case II: v < 1 When v < 1, Equation B.143 can be immediately simplified since (1 — rv) is positive within the whole limits of the integration. Thus for this case, 6Ff = 2usmg I f df 86 Jo = u-smg 86 (B.147) B.3 Integration of Friction Torque Equation The log term in the analytical solution of Tf is the same as the one contained in the analytical solution of Ff. As before, the sector defined by 6 — 0 must be integrated separately, and the incremental frictional torque due to this sector is given by 8Tf = 2fismgR / ' df 86 (B.148) Jo ^(l _ fvf Once again, this integral is indeterminate at f = |. Case I: v > 1 8Tf 2psmgR 2fismgR (kf f\fv-l) L dr + / ffi . dr V ' C I - rv)2 y/(l - rv)2 r dr + / mr dr 86 1 1 2 ( 2 = -fismgR I 1 — — I £0 £0 Case II: v < 1 £0 (B.149) 8Tf = 2psmgR / —i ; 2 - u-smg R 89 (B.150) Appendix C Simulation Programs Users Guide Programs SQ4, SM4 Make sure that the files HANDHARD and HANDINPT are in the same computer drive directory as SQ4 (or SM4). If they do not already exist, create files HAN-DOUPT, HANDCFOR and HANDHIST. Edit files HANDHARD and HANDINPT by entering input variables as desired. Typical listings of these files are given in Figures C.70 and C.71 Run the simulation by typing SQ4 (or SM4). An animated display of the grasping process will be shown on the-computer monitor. This display is generally slower than real-time. When the simulation run is over, information about the grasp will appear on the monitor, and in particular an indication is given as to whether or not a stable grasp was successfully achieved. Figure C.72 is an example of this display output. Other data can be obtained from the output files HANDOUPT, HANDCFOR and HANDHIST as follows: • HANDOUPT gives a time history of object linear and angular position and of the four link positions, as well as of the program variable CONTACT (ref. Section 6.2.2). • HANDCFOR gives a time history of the normal contact forces. 208 Appendix C. Simulation Programs Users Guide 209 PALM WIDTH 80. .0 LOWER LINK LENGTHS 80. .0 UPPER LINK LENGTH 100. .0 RH FINGER OFFSET 10. .0 LH FINGER OFFSET 10 , .0 PALM OFFSET 10, .0 ALPHA A (INITIAL) 65. .0 ALPHA B (INITIAL) 115 .0 ALPHA C (INITIAL) 22 .5 ALPHA D (INITIAL) -22 .5 S PINION NO OF TTH 30 .0 L PINION NO OF TTH 48 .0 Figure C.70: The Input File HANDHARD object radius 48 . 4 object x position 48. 17 object y position 75. 98 motor 1 ang. ve l . 12 . 48 motor 2 ang. ve l . 12 . 48 time increment 0. 001 f r i c coef obj- l ink 0. 45 f r i c coef obj-surf 0. 31 thread torque rh 0 . 05 thread torque lh 0. 05 finger force l im. rh 30 .0 finger force l im. lh 30 .0 object density 2700 .0 object height 25 .4 Figure C.71: The Input File HANDINPT Appendix C. Simulation Programs Users Guide 210 % sq4 GRASP STABILITY WITH LINKS A AND B. GRASP STABILITY WITH LINKS A,B AND C. TRANS. FORM CLOSURE LINKS A,B,C,D. Fortran STOP Figure C.72: Example of Monitor Output. • HANDHIST is a history of the subroutines accessed during the simulation run. The headers and initial entries of a typical set of these three output files are given in Figure C.73. 5. The data in HANDOUPT and/or HANDCFOR can be displayed in graphical form using an independant graphics package. C.2 Programs SQ6, SM6 These programs are used in an identical manner to SQ4 and SM4. The input files in this case are HAND3HARD and HAND3INPT, while the output files are HAND30UPT, HAND3CFOR and HAND3HIST. Typical listings of the input files are given in Fig-ures C.74 and C.75 C.3 List of Subroutines A list of all the program subroutines used in the four simulation programs is given in this section. It should be noted that in many cases the contents of a subroutine may not be identical in each of the programs in which it may be utilized (e.g. Routine 11 - Check Appendix C. Simulation Programs Users Guide Handouptt T CONTACT X V TH AA AB AC AO 0. .010 0 0. .048170 0. ,075980 0. ,000000 65. .2383 114. .7617 22. .5000 -22. 5000 0. .020 0 0. .048170 0. ,075980 0. ,000000 65. ,4767 114. ,5233 22. .5000 -22. 5000 0. .030 0 0.048170 0. ,075980 0. ,000000 65. ,7151 114. 2850 22. ,5000 -22. 5000 0. .040 0 0.048170 0. .075980 0, .000000 65. .9534 114 . .0466 22. .5000 -22. 5000 0. .050 0 0. .048170 0. ,075980 0. ,000000 66. .1918 113. .8082 22. ,5000 -22. 5000 0. .060 0 0. ,048170 0. ,075980 0. .000000 66. .4301 113. 5699 22. .5000 -22 . 5000 0. .070 0 0. .048170 0. .075980 0. .000000 66. .6685 113. .3315 22. .5000 -22. 5000 0. .080 0 0. .048170 0. ,075980 0. .000000 66. .9068 113. .0932 22. .5000 -22. 5000 0, .090 0 0.046170 0. .07S980 0. .000000 67. .1452 112. .8548 22. .5000 -22. 5000 0. .100 0 0. ,048170 0. .075980 0. .000000 67. .3835 112. .6165 22. .5000 -22. 5000 0. .110 0 0. .048170 0. .075980 0. .000000 67. ,5823 112. .3781 22. .5000 -22. 5000 0, .120 16 0. .047946 0. .076072 -, .000860 67, .8206 112. .1398 22. .5000 -22. 5000 0, .130 16 0, .047720 0. .076163 -, .001719 68. ,0590 U l . .9014 22. .5000 -22. 5000 0, .140 16 0. .047494 0. .076254 .002579 68. .2973 U l , .6631 22. .5000 -22. 5000 0, .150 16 0. .047266 0. .076344 -, .003438 68. .5357 U l . .4247 22. .5000 -22. 5000 Handcfor: T CONTACT X Y TH FNA FNB FNC FND 0. .010 0 0. .048170 0. .075980 0 .000000 0. .0000 0. .0000 0. .0000 0. 0000 0, .020 0 0, .048170 0. .075980 0 .000000 0. .0000 0. .0000 0 .0000 0. .0000 0, .030 0 0. .048170 0. .075980 0, .000000 0. .0000 0. .0000 0. ,0000 0. 0000 0, .040 0 0. .048170 0. .075980 0 .000000 0.0000 0. ,0000 0, .0000 0. .0000 0, .050 0 0 .048170 . 0 .075980 0 .000000 0 .oooo 0. .0000 0 .0000 0. .0000 0, .060 0 0 .048170 0. .075980 0 .000000 0. .0000 0. .0000 0 .0000 0. 0000 0 .070 0 0 .048170 0 .075980 0 .000000 0 .0000 0, .0000 0 .0000 0. .0000 0, .080 0 0. .048170 0. .075980 0 .000000 0, .0000 0. .0000 0 .0000 0. .0000 0. .090 0 0 .048170 0. .075980 0 .000000 0, .0000 0. .0000 0 .0000 0. .0000 0 .100 0 0 .048170 0 .075980 0 .000000 0 .0000 0 .0000 0 .0000 0. ,0000 0 .110 0 0 .048170 0 .075980 0 .000000 0 .0000 0, .0000 0 .0000 0. .0000 0 .120 16 0 .047946 0 .076072 - .000860 1 .1511 0 .0000 0 .0000 0. ,0000 0 .130 16 0 .047720 0 .076163 _ .001719 1 .1510 0. .0000 0 .0000 0. .0000 0 .140 16 0 .047494 0. .076254 - .002579 1, .1510 0 .0000 0 .0000 0. ,0000 0 .150 16 0 .047266 0 .076344 - .003438 1 .1511 0 .0000 0 .0000 0. .0000 Handhist: 10 INPUT DATA VALIDATION. 21 CONTACT CHK.: C ' 22 CONTACT CHK.: D 11 LINK INTERFERENCE CHK. 40 DISPLAY. 1 ACTUATE A. 21 CONTACT CHK. : C 2 ACTUATE B 22 CONTACT CHK . : D 11 LINK INTERFERENCE CHK. 40 DISPLAY. 1 ACTUATE A. 21 CONTACT CHK.: C 2 ACTUATE B 22 CONTACT CHK.: D 11 LINK INTERFERENCE CHK. 40 DISPLAY. Figure C.73: Format of the Three Output Files. Appendix C. Simulation Programs Users Guide 212 PALM WIDTH 80.0 LOWER LINK LENGTHS 100.0 MIDDLE LINK LENGTH 100.0 TOP LINKS LENGTH 80.0 RH FINGER OFFSET 8.0 LH FINGER OFFSET 8.0 PALM OFFSET 5.0 ALPHA A (INITIAL) 45.0 ALPHA B (INITIAL) 135.0 ALPHA C (INITIAL) -22.0 ALPHA D (INITIAL) 22.0 ALPHA E (INITIAL) -12.0 ALPHA F (INITIAL) 12.0 PINION 1 NO OF TTH 30.0 PINION 2 NO OF TTH 30.0 PINION 3 NO OF TTH 30.0 Figure C.74: The Input File HAND3HARD object radius 77, .0 object x position 34. .0 object y position 116. .0 motor 1 ang. ve l . 23. .12 motor 2 ang. ve l . 12. .01 time increment 0. . 001 f r i c coef obj- l ink 0. .45 f r i c coef obj-surf 0. .2 thread torque rh lo 0 . 5 thread torque lh lo 0. . 5 thread torque rh up 0. .05 thread torque lh up 0. .05 finger force l im. rh 30. .0 finger force l im. lh 30. . 0 object density 2700 . 0 object height 15. .0 Figure C.75: The Input File HAND3INPT Appendix C. Simulation Programs Users Guide 213 for Interference between Links is more extensive in SQ6 and SM6 than it is in SQ4 and SM4 since a greater number of links must be checked for possible interference). C.3.1 Programs SQ4 and SM4 R O U T I N E 1 Link A Actuation and Contact Check. R O U T I N E 2 Link B Actuation and Contact Check. R O U T I N E 3 Link C Actuation. R O U T I N E 4 Link D Actuation. R O U T I N E 5 One-Contact Simulation - Link A. R O U T I N E 6 One-Contact Simulation - Link B. R O U T I N E 7 Stability Check - Links A and B. R O U T I N E 8 Form Closure/Stability Check - Links A,B and G R O U T I N E 9 Form Closure/Stability Check - Links A,B and D. ROUTINE10 Validation of Input Data. ROUTINE11 Check for Interference between Links. ROUTINE12 Form Closure/Stability Check - Links A,B,Cand D. ROUTINE15 Check for Contact with Palm. ROUTINE16 Two-Contact Simulation - Link A and Palm. ROUTINE17 Two-Contact Simulation - Link B and Palm. Appendix C. Simulation Programs Users Guide ROUTINE19 Estimations for Surface Friction. ROUTINE21 Check for Contact with Link C. ROUTINE22 Check for Contact with Link D. ROUTINE25 One-Contact Simulation - Link C. ROUTINE26 One-Contact Simulation - Link D. ROUTINE27 Stability Check - Links C and D. ROUTINE37 Slide Simulation - Links A and B. ROUTINE40 Graphical Display. ROUTINE50 Object Position Calculation - Links A and B. ROUTINE51 Object Position Calculation - Links C and D. ROUTINE53 Object Position Calculation - Links B and C. ROUTINE54 Object Position Calculation - Links A and D. ROUTINE63 Slide Simulation - Links B and C. ROUTINE64 Slide Simulation - Links A and D. ROUTINE65 Slide Simulation - Links C and D. ROUTINE80 Two-Contact Simulation - Links A and C. ROUTINE81 Two-Contact Simulation - Links B and D. Appendix C. Simulation Programs Users Guide C.3.2 Additional Routines in Programs SQ6 and SM6 ROUTINE13 Link E Actuation. ROUTINE14 Link F Actuation. ROUTINE23 Check for Contact with Link E. ROUTINE24 Check for Contact with Link F. ROUTINE28 One-Contact Simulation - Link E. ROUTINE29 One-Contact Simulation - Link F. ROUTINE47 Stability Check - Links E and F. ROUTINE52 Object Position Calculation - Links E and F. ROUTINE56 Object Position Calculation - Links D and E. ROUTINE57 Object Position Calculation - Links C and F. ROUTINE66 Slide Simulation - Links D and E. ROUTINE67 Slide Simulation - Links C and F. ROUTINE69 Slide Simulation - Links E and F. ROUTINE71 Form Closure/Stability Check - Links C,D and E. ROUTINE72 Form Closure/Stability Check - Links C,D and F. ROUTINE73 Form Closure/Stability Check - Links C,D,E and F. ROUTINE74 Form Closure/Stability Check - Links A,B,C,D and E. Appendix C. Simulation Programs Users Guide ROUTINE75 Form Closure/Stability Check - Links A,B,C,D and F. ROUTINE76 Form Closure/Stability Check - Links A,B,C,D,E and F. ROUTINE82 Two-Contact Simulation - Links Cand E. ROUTINE83 Two-Contact Simulation - Links D and F. Glossary 217 Glossary A N T H R O P O M O R P H I C H A N D - a hand with a geometry similar to that of a human hand. B A N G B A N G R O B O T - see Pick and Place Robot. D E G R E E S OF F R E E D O M - (in robotics) number of independantly movable links. D E X T E R I T Y - manual or mental adroitness, neatness of handling. [17] E N D E F F E C T O R - general term to describe the hand, gripper, pick-up or tool which is attached to the outer link of a robot arm. F O R C E C L O S U R E - see Stable Grasp. F O R M C L O S U R E - a set of constraints that are placed around a rigid body so that the rigid body motion is not allowed in any direction. [2] to G R A S P - to totally constrain the position/orientation of the object relative to the hand by closing the fingers. G R A S P I N G D E X T E R I T Y - (introduced in this thesis) a measure of the ability of a hand to achieve successful grasps under a wide variety of situations in the shortest possible time. G R A S P R A N G E - (introduced in this thesis) a multi-dimensional region within the grasp space in which successful grasping is achievable. G R A S P S P A C E - (introduced in this thesis) area within the reach of the gripper links in which an object can be placed and be potentially grasped. Glossary 218 GRIP T R A N S F O R M - matrix which relates a vector of contact wrench intensities to a net generalised wrench at the end effector. [35] J A C O B I A N M A T R I X - matrix which transforms the vector of joint angular and linear velocities to the end effector angular and linear velocity. M A N I P U L A T I O N - adjustment, by the robot hand itself, of the object position within the grasp. M E C H A N I C A L H A N D - a kinematic chain with time-varying topology which be-comes redundantly actuated when an object is grasped. [40] M O B I L I T Y - (of a kinematic system) the number of independant parameters that are necessary to specify completely (or to within a finite set) the position of every body in the system at the instant of concern. [35] P I C K A N D P L A C E R O B O T - non-programmible robot arm capable of carrying out a limited sequence of motions, where each motion is triggered by actuation of a limit switch at the end of the previous motion (also called a Bang Bang robot). P L A N A R G R A S P I N G - a link and object configuration where all motion during grasping occurs in a single plane. S T A B L E G R A S P - situation where the grasped object is capable of resisting external forces and moments without being dislodged from the end effector (also called Force Closure). S C R E W S Y S T E M - a representative model by which any collection of forces and moments acting upon a body can always be reduced to a single wrench (i.e. a force along a unique line of action and a moment about the line). Similarly, the velocity Glossary 219 of a body at a particular instant may be represented by an angular velocity about a unique line and a translational velocity along that line. SLIPPERINESS - (introduced in this thesis) (of an object) the coefficient of friction between the object and a rubber surface. STIFFNESS - (of a link) measure which determines what forces can be impressed upon the link if it is deflected from a nominal position. [35] STIFFNESS - (of a grasp) a linearised expression of the relationship between forces applied to the grasp and the resulting motions. [11] W R E N C H - refer to Screw System entry. 

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.831.1-0098595/manifest

Comment

Related Items