Citation
Design and Development of a Robot Manipulator for Citrus Harvesting

Material Information

Title:
Design and Development of a Robot Manipulator for Citrus Harvesting
Creator:
SIVARAMAN, BABU ( Author, Primary )
Copyright Date:
2008

Subjects

Subjects / Keywords:
Crop harvesting ( jstor )
Dexterity ( jstor )
End effectors ( jstor )
Fruits ( jstor )
Hydraulics ( jstor )
Jacobians ( jstor )
Kinematics ( jstor )
Robotics ( jstor )
Robots ( jstor )
Trajectories ( jstor )

Record Information

Source Institution:
University of Florida
Holding Location:
University of Florida
Rights Management:
Copyright Babu Sivaraman. Permission granted to the University of Florida to digitize, archive and distribute this item for non-profit research and educational purposes. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder.
Embargo Date:
12/31/2011
Resource Identifier:
659561032 ( OCLC )

Downloads

This item is only available as the following downloads:


Full Text

PAGE 1

DESIGN AND DEVELOPMENT OF A RO BOT MANIPULATOR FOR CITRUS HARVESTING By BABU SIVARAMAN A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLOR IDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2006

PAGE 2

Copyright 2006 by Babu Sivaraman

PAGE 3

To my mother, for showing me the importance of hard work and persistence in all aspects of life

PAGE 4

iv ACKNOWLEDGMENTS I thank my advisor, Dr. Thomas Burks, for providing me an opportunity to explore my interests in the design and developm ent of a robotic system. His constant encouragement and thoughtful suggestions he lped me to accomplish the multiple tasks set forth for my dissertation. Needless-to-say, the get-togethers Dr. Burks and his family kindly hosted served as a respit e from my regular schedule. I thank all the committee members for showi ng great interest in my research work. I am thankful to Dr. Carl Crane III for in troducing me to the subj ect of robotics through his course offerings and Dr. John Schuelle r for his continued support throughout my academic pursuit at the University of Flor ida. I also thank them for providing the hydraulic power unit for the test set-up. I express my sincer e gratitude to Dr. Sencer Yeralan for sharing interesting discussions on a multitude of topics and Dr. John Harris for serving as the external committee member as well as for being the graduate advisor for my minor in el ectrical engineering. I thankfully acknowledge the support of the Florida Depa rtment of Citrus (FDOC) and the Institute of Food and Agricultural Sciences (IFAS) for the research work on robotic manipulator developm ent for citrus harvesting. I also offer my sincere appreciation to Mr. Michael Zingaro and Mr. Gregory Pugh for their tremendous support in th e lab. Thanks are due to Mr.S teve Feagle for his timely completion of the joint parts and for his help in assembling the manipulator. The prototype would not have come to fruition without their support.

PAGE 5

v My appreciation goes to Dr. Haridas Na yar of Ophirtech for his RobotectPro software support and to Dr. Peter Corke of Australian Commonwealth Scientific and Industrial Research Organization (CSIRO) for making available the Matlab Robotics Toolbox free of cost over the web. I offer many thanks to Dr. Michael Hanna n, Samuel Flood, Rajesh Pydipathi, Paulo Younse, Aaron Franzen, Siddha rtha Mehta, Vijay Subramanian, Satnam Singh, Duke Bulanon, Sanghoon Han, and Xu Zhao of the ARM group for their interaction both in and out of the laboratory. Sam also provided me w ith data from tests he conducted on fruit properties. I owe much to Madhavan Esaya nur, Sudarsan Srinivasan, Xavier George, Shiva Ariyakula, Subramanian Arcot, Shar ath Cugati, Inka Hublitz, Luis Nogueira, Noble Thomas, Min Min, and Bernard Carden as for making my stay in Gainesville delightful. Finally, I am most thankful to my brot her Raja for his eternal support and my loving wife Raji for her consta nt encouragement and patien ce, and for proof-reading the entire document.

PAGE 6

vi TABLE OF CONTENTS page ACKNOWLEDGMENTS.................................................................................................iv LIST OF TABLES...............................................................................................................x LIST OF FIGURES...........................................................................................................xi ABSTRACT.......................................................................................................................xv CHAPTER 1 INTRODUCTION........................................................................................................1 Overview.......................................................................................................................1 Citrus Industry Economics...........................................................................................1 Robotic Harvesting Economics....................................................................................3 Dissertation Organization.............................................................................................4 2 OBJECTIVES...............................................................................................................7 Problem Statement........................................................................................................7 Scope.......................................................................................................................... ...7 Limiting Assumptions..................................................................................................8 3 LITERATURE REVIEW...........................................................................................10 Robotic Harvesting Manipul ators – Related Work....................................................10 Manipulator Kinematics.............................................................................................15 Kinematic Performance Indices..................................................................................21 Workspace...........................................................................................................22 Dexterity Indices.................................................................................................23 Robot manipulability....................................................................................24 Manipulability ellipsoid...............................................................................26 Posture diversity...........................................................................................26 4 METHODS AND PROCEDURES............................................................................35 Robot Manipulator Configuration Sel ection for Citrus Harvesting Task...................35

PAGE 7

vii Mechanical Design of the Four DOF Manipul ator Comprising the Distal Joints of the Selected Configuration......................................................................................36 Hydraulic Test Circuit and Joint Level Control System.............................................37 Manipulator Performance Tests..................................................................................38 5 ROBOT MANIPULATOR SYNTHESIS: MODELING TOOLS.............................40 Introduction.................................................................................................................40 Manipulator Synthesis................................................................................................41 Kinematic Synthesis Tool Requirements............................................................42 Matlab Robotics Toolbox and RobotectPro........................................................44 Application example....................................................................................44 Robot definition............................................................................................45 Forward and inverse kinematics...................................................................47 Trajectory generation...................................................................................48 Performance measures..................................................................................49 Additional features.......................................................................................50 Robot synthesis tools comparison................................................................52 Summary and Conclusions.........................................................................................52 6 KINEMATIC DEXTERITY INDICES FOR CITRUS HARVESTING ROBOT CONFIGURATION SELECTION.............................................................................57 Introduction.................................................................................................................57 Robot Kinematic Performance Indices.......................................................................58 Proposed Indices for Agricultural Robot Design and Analysis...........................58 Translational and rotational manipulability.................................................58 Directional invari ance of dexterity...............................................................61 Application Example...........................................................................................62 Citrus tree layout and fruit distribution........................................................62 Basic robotic system layout..........................................................................62 Analysis of citrus harves ting robot configurations......................................63 Results and discussion..................................................................................64 Conclusions.................................................................................................................66 7 MANIPULATOR CONFIGURATI ON SELECTION FOR CITRUS HARVESTING...........................................................................................................75 Introduction.................................................................................................................75 Robotic Citrus Harvesting Task Description..............................................................76 Robot Configuration Selection...................................................................................76 Kinematic Structures for Evaluation...................................................................77 Workspace Evaluation.........................................................................................77 RobotectPro Modeling.........................................................................................78 Virtual Environment for Trajectory Simulations................................................78 Trajectory Generation..........................................................................................79 Dexterity Performance Ev aluation and Comparison...........................................79

PAGE 8

viii Results and Discussion...............................................................................................80 Conclusions.................................................................................................................82 8 HYDRAULIC MANIPULATOR PR OTOTYPE DEVELOPMENT........................94 Introduction.................................................................................................................94 Manipulator Requirements and Joint Specifications..................................................95 Manipulator Requirements..................................................................................95 Payload.........................................................................................................95 Speed............................................................................................................96 Accuracy.......................................................................................................97 Size and weight............................................................................................97 Cost...............................................................................................................98 Joint Specifications..............................................................................................98 Actuators Selection and Joint-Link Layout................................................................99 Actuators Selection..............................................................................................99 Joint-Link Layout..............................................................................................102 Mechanical Design and A ssembly of Manipulator..................................................103 Hydraulic Actuation System Design........................................................................106 Rotary Actuator Control Circuit........................................................................106 Hydraulic Components for VCMM...................................................................108 Summary and Conclusions.......................................................................................109 9 CONTROL SYSTEM IMPLEM ENTATION AND PROTOTYPE PERFORMANCE RESULTS..................................................................................117 Introduction...............................................................................................................117 Electro-Hydraulic Control System Implementation.................................................117 Joint Angular Position Control..........................................................................118 Valve Configuration..........................................................................................119 Dual Solenoid Amplifier for Valve Control......................................................120 Feedback Transducer.........................................................................................122 Data Acquisition Boards....................................................................................122 Electro-Hydraulic Contro l Circuit and Software...............................................123 Manipulator Performance Experiments and Results................................................123 Fruit Detachment Force Capability...................................................................123 Robot Manipulator Kinematic Model Verification...........................................124 Conclusions...............................................................................................................127 10 SUMMARY AND CONCLUSIONS.......................................................................138 Summary...................................................................................................................138 Overall Conclusions and Future Work.....................................................................141

PAGE 9

ix APPENDIX A NUMERICAL EXAMPLE FOR COMPUTATION OF DEXTERITY PERFORMANCE INDICES....................................................................................144 B COORDINATE FRAME ATTACHMENTS AND MECHANISM PARAMETERS FOR ROBOT MANIPULATOR CONFIGURATIONS..............148 C BILLS OF MATERIALS FOR ROBO T MANIPULATOR PROTOTYPE............150 D MANUFACTURER SPECIFICATIONS FOR THE ELECTRO-HYDRAULIC CONTROL SYSTEM COMPONENTS...................................................................152 E CONTROL PROGRAM...........................................................................................166 LIST OF REFERENCES.................................................................................................181 BIOGRAPHICAL SKETCH...........................................................................................187

PAGE 10

x LIST OF TABLES Table page 1-1 Measurement units used to represent physical quantities..........................................6 3-1 Joint combinations for va rious robot configurations................................................33 3-2 Reported harvesting performances of agricultural manipulators.............................34 5-1 Kinematic parameters for the AFD arm...................................................................56 5-2 Robotics Toolbox and RobotectPro comparison......................................................56 6-1 D-H parameters for arm with PYR wrist.................................................................74 6-2 D-H parameters for arm with RPR wrist..................................................................74 6-3 Fruit positions from robot base................................................................................74 8-1 Manipulator dynamic parame ters for RobotectPro model.....................................116 8-2 Joint parameters from simulation...........................................................................116 8-3 Rotary hydraulic actuato rs performance data.........................................................116 9-1 Deadband jump and maximum amplifier gain settings..........................................137 9-2 Mechanism parameters fo r four DOF manipulator................................................137 9-3 Joint vectors used for manipulator performance experiment.................................137 9-4 Kinematic model verification.................................................................................137

PAGE 11

xi LIST OF FIGURES Figure page 3-1 MAGALI apple picking arm: , , and T represent the three DOF.........................28 3-2 CITRUS picking arm structures...............................................................................28 3-3 Citrus picking robot..................................................................................................29 3-4 Kubota arm...............................................................................................................29 3-5 Greenhouse tomato harvesting robot........................................................................29 3-6 Tomato harvester manipulator mechanism..............................................................30 3-7 Picking arm stru cture for Agribot............................................................................30 3-8 Picking arm structur e of first prototype...................................................................31 3-9 Dual arm layout for the second prototype................................................................31 3-10 Coordinate frame assignment and D-H parameters.................................................32 3-11 Posture diversity.......................................................................................................32 3-12 Manipulability ellipsoid...........................................................................................32 4-1 Robot manipulator configur ation for citrus harvesting............................................39 4-2 Arm assembly...........................................................................................................39 5-1 Link frame assignment for the AFD arm.................................................................54 5-2 AFD arm representation in Robotics Toolbox.........................................................54 5-3 AFD arm model created in RobotectPro..................................................................54 5-4 Joint position, velocity, and acceleration profiles from trajectory generation in the Robotics Toolbox...............................................................................................55 5-5 Joint coordinate values for a sa mple AFD arm trajectory generated in RobotectPro..............................................................................................................55

PAGE 12

xii 5-6 Dexterity analysis in RobotectPro............................................................................56 6-1 Florida citrus grove layout.......................................................................................69 6-2 Workspace volume...................................................................................................69 6-3 Articulated arm with PYR wrist...............................................................................69 6-4 Articulated arm with RPR wrist...............................................................................70 6-5 Fruit picking volume with trial fruit positions.........................................................70 6-6 End effector approach angle space...........................................................................70 6-7 Translational manipulability....................................................................................71 6-8 Rotational manipulability.........................................................................................71 6-9 Translational DID.....................................................................................................72 6-10 Rotational DID.........................................................................................................72 6-11 Translational ellipsoids al ong trajectory for fruit 3..................................................73 6-12 Rotational ellipsoids along trajectory for fruit 3......................................................73 7-1 Design methodology for robotic manipulator synthesis..........................................84 7-2 Citrus fruit distribution.............................................................................................85 7-3 Manipulator configurations......................................................................................85 7-4 Workspace plan view...............................................................................................86 7-5 Workspace side elevation.........................................................................................86 7-6 RobotectPro models.................................................................................................87 7-7 RobotectPro virtual environmental model...............................................................87 7-8 Row and column fruit locations and the FDL used for trajectory simulations........88 7-9 End effector Cartesian coordinates along trajectory via fruit location 1..................88 7-10 Translational dexterity ellipsoids along trajectory via fruit location 1....................89 7-11 Rotational dexterity ellipsoids al ong trajectory via fruit location 1.........................90 7-12 Translational dexterity ellipsoid volu mes along trajectories via fruit locations. Horizontal fruit locations.........................................................................................91

PAGE 13

xiii 7-13 Rotational dexterity ellipsoid volumes along trajectories via fruit locations. Horizontal fruit locations.........................................................................................92 7-14 Translational singular va lues along fruit location 1.................................................93 7-15 Rotational singular valu es along fruit location 1.....................................................93 8-1 Type 2 manipulator configuration sh owing the last four DOF for prototype construction............................................................................................................111 8-2 End effector prototype for fruit harvesting............................................................111 8-3 End effector FDF vectors.......................................................................................111 8-4 Hydraulic vane actuator.........................................................................................111 8-5 Joint-Link layout options for four DOF manipulator.............................................112 8-6 Joint-Link cross-section detail...............................................................................112 8-7 Roll joint exploded assembly.................................................................................113 8-8 Pitch joint assembly...............................................................................................113 8-9 Manipulator joint-link layout.................................................................................114 8-10 Assembled manipulator prototype.........................................................................114 8-11 Hydraulic test circui t with flow divider.................................................................115 8-12 Hydraulic circuit schematic fo r valve controlled motor motion............................115 9-1 Block diagram for closed loop angular position control of hy draulic actuator......129 9-2 Overlapped four way spool valve schematic..........................................................129 9-3 Flow gain for a closed-center valve.......................................................................129 9-4 Proportional solenoid valve current input to flow output performance.................130 9-5 VCMM schematic with dual solenoid driver input................................................130 9-6 Input to output signal proportional ity of the dual solenoid amplifier....................130 9-7 Signal flow diagram for elec tro-hydraulic control circuit......................................131 9-8 Electro-hydraulic system circuit.............................................................................132 9-9 Electro-hydraulic cont rol system components.......................................................133

PAGE 14

xiv 9-10 Pseudo code for angular position co ntrol of the manipulator joints.......................134 9-11 FDF verification test setup.....................................................................................135 9-12 Kinematic model for the f our DOF robot manipulator..........................................135 9-13 Experimental setup for robot mani pulator kinematic model verification..............135 9-14 Height measurement using plumb bob attached at manipulator end point............136 9-15 Error between calculated and actual manipulator end poi nt coordinate values.....136

PAGE 15

xv Abstract of Dissertation Pres ented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy DESIGN AND DEVELOPMENT OF A RO BOT MANIPULATOR FOR CITRUS HARVESTING By Babu Sivaraman December 2006 Chair: Thomas F. Burks Major Department: Agricultura l and Biological Engineering A citrus production task th at has tremendous potential for automation is fruit harvesting. Though mass harvesting technologies such as trunk and canopy shakers are available, they cannot be used for fresh fru it harvesting due to fruit damage and selective harvesting as required for Valencia oranges. Robotic harvesting is ideally suited for this task. One particular area of re search in the development of a robotic fruit harvester is the synthesis of the robot manipulator that perf orms the function of a human arm by carrying an end effector that is used for picking the fr uits individually. In the majority of previous research efforts, the design of the r obot manipulator was simplified and thus underperformed. The systematic design of a r obot manipulator for ci trus harvesting is detailed in this dissertation. The robot synthesis is divi ded into the kinematic desi gn and the structural design. A framework for the selection of an optimal manipulator configur ation is developed through manipulator dexterity performance indi ces. The robot manipulator’s dexterity is

PAGE 16

xvi highly important for the citrus harvesting ap plication due to the variability of fruit distribution and the unstructured nature of the harvesting workspace. The selection and proper application of dexterity measures ar e discussed. The robot manipulator Jacobian analysis yielded the translational and rotationa l dexterity measures which are used for the selection of a seven degree of freedom conf iguration through evaluation and comparison of four alternative configurations. The performance requirements estimated for the citrus harvesting application are then used to develop a prototype mechanism c onsisting of the four di stal joint-link pairs in the selected configuration. The feasibil ity of the joint actua tion scheme utilizing hydraulic rotary actuators is evaluated along with the mechanical design. A basic joint level position control scheme is develope d using valve controlled motor motion with feedback from joint position sensors. The ma nipulator performance in its workspace is verified through laboratory expe riments. The prototype can be used for the development and testing of advanced control sche mes and fruit detection algorithms.

PAGE 17

1 CHAPTER 1 INTRODUCTION Overview Automated harvesting of citrus is being in creasingly contemplated due to two main reasons. The first reason is that manual harves ting is hazardous. Harvesters climb ladders to heights of 5.50 m to pick individual matu re fruits, while carrying shoulder collection bags weighing ninety pounds (Roka and Longworth, 2001). The second reason is the growing labor shortage and rising labor cost s in the Florida citr us industry. Though mass harvesting technology (trunk and canopy shaker) ex ists for harvesting fruits intended for processing (Whitney, 1999), they cannot be applie d efficiently to harvest fresh fruits due to a decrease in the fruit quality caused duri ng the harvesting proce ss. Also, defoliation and damage to tree(s) during mass harvesting are concerns and though studies show leaf removal up to 50% does not cause yield decr ease for the subsequent year, long term effects are still being researched (Buker et al., 2004). Additionally, selective harvesting, which is required when this year’s and next year’s crop is present in the tree as in Valencia oranges, is not feasible by ma ss harvesting. An efficient, economical, and effective robotic harvester with multiple arms can be used to harvest fresh fruits and processed fruits along with added benefits such as in-field sorting and grading, and yield monitoring. Citrus Industry Economics The United States is among the world lead ers in citrus produ ction. Though “citrus” includes a wide variety of orange, tangerine, grapefruit, lime and lemon, oranges have the

PAGE 18

2 largest share of produce in the United States. Florida’s average share for the 1999 to 2001 seasons is about 80% of the total oranges pr oduced in the United St ates. And it is about 15% of the total world production. Apart from Florida, the other major citrus growing states are California, Texas and Arizona. Inte rnationally, Brazil, Ital y, Mexico and Israel are the major competitors (Florida Department of Citrus [FDOC], 2004). The United States is challenged by its comp etitors, with the global market poised to increase the demand for oranges (fresh and pr ocessed) in the future. This challenge is posed by the scarce availability of seas onal labor and the increased labor costs. According to Brown (2002), labor productivity should greatly increase along with about a 50% reduction of contract harvest cost for the Florida citrus products to be competitive in free-trade markets. The above-cited reasons coupled with th e increased resear ch on agricultural mechanization make the Florida citrus industry an ideal candidate for potential application of intelligent harvesting systems. Of the total producti on of oranges, about 5% is for the fresh fruit market. Fresh fruit harvesting is wholly done manually and there is increasingly a shortage of skilled laborers. For the growers to realize profit there is a need for an intelligent harves ter that can emulate a human and perform the task of fruit picking. Nevertheless, it must be mentioned that the orchards might need additional preparations including ground leveling, hedging, topping and in-row spacing for the mechanical harvester to perform optimally as discussed in the article on horticultural aspects of robotic fruit harv esting by Burks et al. (2005).

PAGE 19

3 Robotic Harvesting Economics The economic analyses that have been pr esented for the case of robotic harvesting have largely been speculations due to multiple unquantifiable factors involved in such a study. The consensuses from these ec onomic analyses are the following: There should be more than one arm picking fr uits from the same mobile platform at a time. The harvesting time per fruit should be fe wer than or equal to two seconds. The robotic harvesting system should be ab le to work at least twelve hours a day during the harvest season. Harvest efficiency (the percen tage of fruits picked from the tree) should be greater than 80%. The facts and assumptions of the economi c analyses can be found in Pejsa and Orrock (1983), Harrell (1987), Sarig (1993), and Rabatel et al. (1995). Tree fruit harvesting is an intricate pro cess that requires proper detection of the fruits, gripping, detaching fruits with minimal damage to either fruit or tree and safe deposition of fruits into a co llection bin. Each operation must be carried out in the most efficient manner to obtain a viable harvesti ng solution. The primary areas of research for the development of a robotic harvester as identified by Hannan and Burks (2004) are fruit detection and fruit removal. Fruit detection involves se lection of suitable sensors (including machine vision) and appropriate al gorithm development which exploit various fruit properties such as color and shape. Fruit removal involves the development of a suitable robotic manipulator(s) and an end-eff ector (tool connected to the end of robot arm/wrist to grasp the fruit). Finally, the robot manipulator mu st be integrated with the fruit detection system to obtain a fully opera tional system. This work primarily focuses on the selection of a suitable robot manipulat or configuration for citrus harvesting, the

PAGE 20

4 mechanical design and fabrication of jointlink pairs for an initi al prototype using hydraulic actuation and the implementation of a joint level motion control system. Dissertation Organization Chapter 1 provided an overview of the dissertation and a brief background on the citrus industry economics. Chapter 2 states th e problem at hand and defines the scope and limiting assumptions. In chapter 3, a review of relevant literature is presented which outlines the research efforts in the de velopment of harvesting manipulators for bioproduction. An overview of robot kinematics is presented along with the performance criteria used in previous efforts for agri cultural robot kinematic synthesis. Chapter 4 provides the experimental methods and pro cedures used for achieving the various objectives. Chapter 5 demonstrates the usag e of robot synthesis and analysis tools through the design of a robot manipulator c onfiguration derived fr om an agricultural harvesting arm. In chapter 6, kinematic pe rformance indices are analyzed and their applicability for the selection of a suitable c onfiguration for the citr us harvesting task is tested. Chapter 7 defines the citrus harves ting task space derived from plant topology and fruit distribution data, and the robotic harvesting task requirements. The design methodology for the selection of an optimal c onfiguration for the citrus harvesting robot manipulator is presented. The kinematic pe rformance indices are used to evaluate multiple configurations primarily for their dexterity using singular values of the manipulator Jacobian. The outcome of chapte r 7 is the kinematic description for the initial citrus harvesting manipulator prot otype. Chapter 8 presents the prototype development details for a four DOF hydrauli c powered manipulator that will comprise the distal joint-links of th e citrus harvesting robot mani pulator. Topics include the mechanical design, development, and fabricatio n of the prototype as well as the hydraulic

PAGE 21

5 system circuit developed for the valve c ontrolled motor motion (VCMM). The specific details provided are torque requirements derived from dynamic simulations of the selected configuration, actu ator placement, the joint la yout, component selection and assembly of the arm prototype, parallel hydraulic circuit for VCMM, and hydraulic system components selection and integrati on. In Chapter 9, details on the joint mode control of the robot manipulator through th e implementation of an electro-hydraulic control system are presented. Additiona lly, the experiments designed to study the manipulator performance, the end effector force capability and the kinematic model verification in particular, ar e presented and the results obtained from these experiments are discussed. Chapter 10 provides the conclusi ons and a few suggestions for future work on the robot manipulator prot otype for citrus harvesting. Appendix A provides a nume rical example for the computation of dexterity performance indices studied in chapters (6 and 7). Appe ndix B shows the coordinate frame attachments and the modified D-H para meters for the manipul ator configurations that were evaluated for citrus harvesting. A ppendix C contains the bills of materials for the manipulator prototype. Appendix D provide s the manufacturer spec ifications for the major components used in the electro-hydrau lic control system. Appendix E lists the control software code. All figures and tables associated with th e chapters are included at the end of the respective chapters and the Inte rnational System of Units (SI) is used through out the text except as noted in Table 1-1.

PAGE 22

6 Table 1-1.Measurement units used to represent physical quantities. Name Symbol Quantity SI base units Length Mass Time Electric current meter kilogram second ampere m kg s A SI derived units Area Volume Speed, Velocity Mass density Plane angle Frequency Force Stress Angular velocity Pressure Electric potential difference Electric resistance Celsius temperature Moment of force, torque square meter cubic meter meter per second kilogram per cubic meter radian hertz Newton Newton per square meter radian per second pascal volt ohm degree Celsius newton meter m2 m3 m/s kg/ m3 rad Hz N N/m2 rad/s Pa V C N m SI prefixes 103 10-2 kilo centi k c Non-SI units Time Angle Volume Flow rate minute degree Liter Liter per minute min or deg L L/min

PAGE 23

7 CHAPTER 2 OBJECTIVES Problem Statement There exists a need for a well designed robot manipulator for citrus fruit harvesting capable of harvesting both surf ace and inner canopy fruits. Scope This research addresses the systematic development of a robot manipulator for a fruit harvesting application. Serial robot conf igurations are ideally suited for tree fruit harvesting applications due to their small m echanism foot print (Siv araman et al., 2006). The manipulator design begins with a study of application specific criteria such as harvesting task space, maximum reach, and fruit picking trajectories. Once the basic task parameters are gathered, a kinematic framew ork describing the linkages is established using the Denavit-Hartenberg (D-H) paramete rs (the modified D-H convention of Craig (1989) will be used). The geometric goals that will be considered for evaluation of alternative configurations are workspace and dexterity. Although the research area of kinematic desi gn of serial manipulat ors is relatively mature, accurate prediction of the performance of a selected kinematic configuration for a given application is stil l a research problem. This is espe cially true for the citrus fruit harvesting application due to the presence of inherent variability in the task space and requires proper selection and usage of kine matic performance indices for performance prediction and comparison of alte rnative configurations. A revi ew of the past manipulator developments for agricultural applications pr esented in the next chapter reveals that the

PAGE 24

8 selection and application of kinematic synthesis tools has been minimal and their discussion even more so. The first objective of this work is to select and apply appropriate kinematic performance indices to determine the optim al manipulator configuration for citrus harvesting. Both numerical a nd graphical synthesis tools are used for simulation and analysis. The second objectiv e is the mechanical design and development of a hydraulically actuated robot manipulator with a reduced set of degrees of freedom (DOF) from the selected configurat ion. Rotary actuators are used for all the jo ints and the selection is based on torque requirements from dynamic simulations utilizing information on payload, maximum applied end-effector force, and generated fruit picking trajectories. The third objective is to speci fy an electro-hydraulic test ci rcuit for valve control of the actuators. The fourth objective is to implemen t and test a joint level closed loop position control system with the use of feedback tran sducers, data acquisition boards and solenoid valve drivers. The test prototype is intende d for use in integrati on of fruit detection algorithms and advanced control system s for fruit harvesting in the future. Limiting Assumptions For the presented work, only kinematic optimality is considered with the determination of number of DOF, link lengt hs, and joint limits satisfying the geometric requirements mentioned previously. Simultane ous optimization of the dynamics of the robot manipulator will require a combined perfor mance metric and is left as future work. The dynamic simulations performed are primar ily for the determination of the actuator torque values for the specified payload and speed. Also, the trajector ies generated for the simulations are chosen to be a representation of the variability in fruit distribution in the

PAGE 25

9 workspace. More thorough harvesting motion studies are needed for the inner canopy fruits with obstacle avoidance routines. Other relevant assumptions are the availabil ity of a suitable en d effector to handle fruits, the utilization of a se parate canopy opening mechanism or another manipulator to allow for the fruit harvesting manipulator to enter the citrus tree canopy, the presence of a two or three DOF base to position the ma nipulator alongside the tree canopy and a vehicular platform to carry the manipulator ar ound the orchard. It is also noted that the use of off-the-shelf components (actuators , sensors, bearings, etc.) for economical reasons necessitated a few adjust ments in the selected kinematic parameters as well as influenced the structural design of the manipulator joint-link pairs.

PAGE 26

10 CHAPTER 3 LITERATURE REVIEW In the first section of this chapter, a number of past efforts for agricultural harvesting manipulator development are revi ewed along with an introduction to the various kinematic performance indices that ha ve been formulated for the design of robot manipulators. The second section of this chapte r serves as an introduction to some of the mathematics that forms the basis for open ch ain serial robot mani pulator modeling and analysis used in this research work. The specific topics included are the manipulator mechanism parameters definition, standard pr ocedure for coordinate system attachment and the transformations between these coordi nate systems, forward kinematics, inverse kinematics, manipulator Jacobian, and manipulator workspace. A more thorough treatment of these subjects can be found in Craig (1989) , Crane and Duffy (1998), and Tsai (1999). The kinematic performance criteri a used in past agricultural manipulator design efforts are discussed in the final section. Robotic Harvesting Manipulators – Related Work The past research efforts on apple, citr us, and tomato harvesting manipulators are presented here due to their similar plant struct ure. Other fruits and vegetables that have been targeted for automated harvesting ar e cucumber (Van Henten, 2002), grape (Kondo, 1995, and Monta et al., 1995), melon (Edan a nd Miles, 1993, and Edan et al., 2000), and watermelon (Sakai et al., 2002). The various spatial manipulator configurations that are av ailable to be adapted for agricultural harvesting from their industrial counterparts are Cartesian, cylindrical,

PAGE 27

11 spherical, articulated, and redundant. The first three have three DOF, the articulated configuration can have anywhere between three to six DOF, and the redundant configuration has more than six DOF. The individual DOF include linear (prismatic: p ) and rotational (revolute: r ) joints. The joint combinations for the industrial robot configurations are presented in Table 3-1. In a 1968 review of mechanical citrus-h arvesting systems by Schertz and Brown (1968), the basic principles for ut ilizing robots to pick fruits were laid out. The earliest prototype was an apple harveste r as described by Parrish and Goksel (1977) that used a simple three-joint arm with a camera on a pa n and tilt mechanism and a touch sensor in place of an end effector to ma ke contact with the modeled fr uit in the laboratory. Due to the rudimentary nature of the mechanical sy stem, this prototype was not used for field tests. In a 1985 patent for a citrus harves ting robot, Tutle (1985) proposed a three DOF spherical manipulator with a telescoping jo int module. No prototype development was reported for this arm. Anot her laboratory prototype wa s developed in France for harvesting apples (Grand D’Esnon, 1985). The mech anical system of this robot consisted of a telescopic arm actuated by a rack and pinion arrangement that can move up and down in a vertical framework. The arm wa s mounted on a barrel that could rotate horizontally thus making it a cy lindrical configuration. A sphi ncter type end effector was used to grasp the fruit. Following this resear ch effort, an enhanced prototype, known as MAGALI, for field tests was developed and pr esented in the resear ch article by Grand D’Esnon et al. (1987). The MAGALI arm was a spherical manipulator servoed by a camera set at the center of the base rotation axes and a vacuum grasper for fruit picking. Figure 3-1 shows the spherical manipulator that executed a pantographic prismatic

PAGE 28

12 movement along with two rotations. The m echanical system for the MAGALI arm was actuated through hydraulic cylinders and the closed l oop joint control was achieved through feedback from potentiometers. The French Spanish EUREKA project name d CITRUS for a robotic harvester for citrus was initiated in 1987 and two arm pr ototypes were developed and tested in 1991 (Pellenc et al. (1990), Juste and Sevila (1991), Juste et al . (1992), and Rabatel et al. (1995)). Both the arms were of the spherical configuration, but differed in the mechanical structure. One was similar to the MAGALI arm with a pantographic structure and the other had a telescopic joint in place of the pa ntographic structure. Field test results from this effort show that the performance of the telescopic joint was inferior to the pantographic structure. The hydraulic actuat ors used in the initial prototypes were replaced with electric motors in the late r progressions. The end e ffectors, sensing, and control techniques used in this project we re similar to the MAGALI arm. Figure 3-2 shows the CITRUS arm structures. The main concept that arose from these developments was that a straight line trajectory from the fixed camera set in the path way to the fruit is free of any obstacles when the fruit is visible, and thus can be used as the commanded trajectory for the grasping tool. As the depth information was not calculated, once the arm moved along the trajectory, the approach to the fruit was so lely dependent on either proximity sensors located on the tool or by the pl ugging of fruit into the vacuum grasper. This led to false detections due to the presence of leaves and/or branches that might be on the line of sight. To overcome the problems associated with dead reckoning guidance of the picking arm, an alternative approach for robotic harvesting of citrus through real time fruit

PAGE 29

13 detection was developed at the University of Florida by Harrell et al. (1988). During this research, a three (DOF) manipul ator actuated with servo-hyd raulic drives was designed, constructed and tested. This geometry is characteristic of a spherical coordinate manipulator and is shown in Figure 3-3. The end effector used for the citrus pick ing robot was a rotating lip mechanism that severed the stem between a stationary and rotating cup. The joint position and velocity control was achieved through potentiometer and tachometer feedback signals. The depth information was obtained through ultrasonic range sensors and a color charge coupled device (CCD) camera that allowed for continuous fruit position sensing. A mandarin orange harvesti ng robot for the orchard named “Kubota” designed in Japan in 1989 by Hayashi, Ueda, and Suzuki was reported by Sarig (1993) and Kondo et al. (1998). The Kubota robot had an articula ted arm with four DOF, but acted as a spherical coordinate robot due to the jo int actuation schemes. Figure 3-4 shows the articulated arm of this robot wh ich utilized an end effector with rotating stem-cutters that contained a color TV came ra and a light source. A fruit harvesting manipulator developm ent for greenhouse tomatoes was reported by Balerin et al., (1991) as s hown in Figure 3-5. The two mani pulator configurations used were a six DOF industrial arm and a three DOF spherical arm with two rotational joints and a telescopic joint. The joints were dr iven by electric motors and mounted over a mobile platform along with the camera equipm ent used for visual sensing. A rotating suction cup served the pur pose of an end effector. Another manipulator mechanism for a tomato harvesting robot that was adapted to the physical properties of the tomatoes wa s presented by Kondo et al. (1996a) and is

PAGE 30

14 shown in Figure 3-6. The manipulator prototype had seven DOF with two prismatic joints and five rotational joints making it a redunda nt configuration. Bu t the prismatic DOF were used only to position the articulated five jointed arm to cover all the fruit positions. The joints were powered by electric motors . A two finger end effector equipped with a suction pad to pull the fruit into the end eff ector was used for normal sized tomatoes and a modified end effector with a nipper to cut the peduncle at the fruit-peduncle joint was used for cherry tomato harvesting (Kondo et al., 1996b). A photoelectric sensor as well as a color camera was used for visual sensing in the trials. Ceres et al. (1998) presented a manipulat or design for an aided fruit harvesting robot (Agribot) that works unde r human guidance. The articul ated manipulator structure was designed based on a kinematic, dynami c and geometric study which took into account the fruit distribution on the tree. Figure 3-7 shows the parallelogram structure of the Agribot’s picking arm with four DOF (all rotational), incl uding the gripper. All of the joints were driven by electric motors. Fruit detection was done by a human operator using a laser telemeter and a joystic k and fruit detachment was done through an end effector with a suction cup that pulled the fruit into a V-shaped cutter. Another development for a citrus harvesti ng manipulator in Italy was reported by Cavalieri and Plebe (1996), Fortuna et al. (1996), and Muscato et al. (2005). The first research prototype had two sphe rically configured picking arms mounted at the tool point of a four DOF positioning platform. The picking arms were driven by electric motors while the platform was driven by hydraulic actu ators. Figure 3-8 shows the arm structure. Muscato et al. (2005) also pr esented a second prototype with two arms mounted on a 45 inclined platform carried on a caterpillar as shown in Figure 3-9. Both the arms were of

PAGE 31

15 the Cartesian type and were driven by electric motors, but the upper arm had a telescopic link in place of a prismatic link as in the lowe r arm due to space constraints. The research also presented a variety of end effector developments, a three finger pneumatic device that used a cutter to remove fruit from st em, a grasping device with a helix movement that brought the stalk into the cutter, and a nother pneumatic end eff ector with jaws to capture the fruit, a sliding tray to hold the fruit and clippers to cut the stalk. Control was achieved through feedback from camera and pr oximity sensor located on the end effector. Table 3-2 presents the reported perf ormances for agricultural harvesting manipulators. As can be seen, agricultural robotic arm developments in the past were simplified in terms of the arm mobility as well as their construction. This could be attributed to an intended reduction in development time and cost as observed by Sivaraman et al. (2006). To address the issues reported from past arm developments as well as to realize an economically viable solution, significant task specific synthesis and performance evaluation is needed for the harvesting manipulator. Manipulator Kinematics The serial robot manipulator mechanism is defined as a serial chain of links and joints with one end fixed and the other end ca rrying an end effector or tool. The links are assumed to be rigid bodies that connect the consecutive joint axes and maintain a fixed relationship between these axes. The four pa rameters that can describe each link in a kinematic chain are: link length a , link twist or twist angle , link offset d , and joint angle . The method of using these four parameters to describe a mechanism is called the Denavit-Hartenberg (D-H) notation. There are many conventions that follow this method to describe the robot manipulat or links. The convention used in this article follows the modified D-H parameters as presented by Cr aig (1989). The following descriptions are in

PAGE 32

16 reference to Figure 3-10. The first step in id entifying the four mechanism parameters is to select the direction for the joint axes vectors axis i-1 and axis i . Following this, the direction vector along the mutually perpendicu lar line between the join t axes is selected. The mutual perpendicular always exists and is unique except when both axes are parallel. In such a case, the location of the vector is chosen arbitrarily. The link length ai-1 is measured along this mutual perpendicular and is the distance between the joint axes. Now consider a plane whose normal is the vector ai-1 and project both axis i-1 and axis i onto this plane, then the angle from axis i-1 to axis i is the twist angle i-1. Following this, the link offset di is defined as the signed distance along axis i from ai-1 to ai and the joint angle i is defined as the rotational angle between ai-1 and ai about the common axis axis i . The twist angles and the joint angles are me asured following the right hand rule. Either di or i will be the joint variable depending on the type of joint, prismatic or revolute, respectively. It should be noted that for the firs t and last links in the chain, the parameters a and are not defined. As for the joint variables, if the joints are revolute, the zero position for can be assigned arbitrarily while the joint offset d is assigned a zero value and the converse is true for prismatic joints. Once the mechanism parameters are determined, the problem of locating each link with respect to its neighboring links is handl ed by attaching a coordinate frame to each link and performing transformations between these frames. The coordinate frames are attached according to the following convention: Considering two neighboring joint axes, axis i-1 and axis i , the origin of the coordinate system for link i-1 is located at the point of intersection of axis i-1 and the mutual perpendicular between axis i-1 and axis i . The Z-axis of the coordinate system will be parallel to axis i-1 . The X-axis of the coordinate system will be parallel to the mutual perpendicular.

PAGE 33

17 The Y-axis is assigned to complete the right hand coordinate system. The coordinate system attached to link i will be designated {i} while the base reference frame {0} is aligned with frame {1} wh en the first joint vari able value is 0. For the last frame, the origin location and the X-axis direction can be chosen arbitrarily. In order to develop the transformati on matrices between consecutive frames, homogeneous coordinates are used. The homogene ous coordinates are used to represent a vector in a four dimensional space where the fourth coordinate is a nonzero scaling factor and is selected to be unity in robot kinema tics applications for c onvenience. This allows representation of a three dimensional vector as the first three hom ogeneous coordinates. The following procedure describes the cons truction of the transformation matrix Ti i 1 to relate frame {i} to frame {i-1} as shown in Figure 3-10: Start with frames {i} and {i-1} aligned. Translate frame {i} about Xi-1 by ai-1. Then, rotate frame {i} about Xi-1 by i-1. Translate frame {i} about Zi by di. Next, rotate frame {i} about Zi by i to complete the transformation. It should be noted that translations and rotations about the same axis commute. The translations and rotations are represented as 4x4 transformations with the upper left 3x3 sub-matrix representing the orientation and the upper right 3x1 s ub-matrix representing the position. The orientations are defined us ing the basic rotation ma trices derived from the Euler angle representation as presented in Tsai (1999) un less otherwise specified. The individual translation and ro tation matrices are then concatenated to obtain the transformation matrix as follows:

PAGE 34

18 1 0 0 0 0 1 0 0 0 0 cos sin 0 0 sin cos 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 cos sin 0 0 sin cos 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 11 1 1 1 1 1 i i i i i i i i i i i id a T (3-1) 1 0 0 0 cos cos sin cos sin sin sin sin cos cos cos sin 0 sin cos1 1 1 1 1 1 1 1 1 1 i i i i i i i i i i i i i i i i i i id d a T (3-2) The above general transformation matrix between subsequent coordinate frames can be used to determine the unique location of the end effector for a specified set of joint variables. This is termed as the forward ki nematics (FK) for a serial robot manipulator. The end effector position in the base frame can be found by determining the transformation matrix TO n that relates the end effector frame {n} to the base frame {0}. The transformation and the mapping of tool pos ition vector from the end effector frame to the base frame are performed as follows wheretool nP and tool OP represent the tool position in frames {n} and {0}, respectively. T T T T Tn n O n1 2 3 1 2 0 1 (3-3) tool n O n tool OP T P (3-4) The problem of inverse kinematics (IK) wher e the objective is to find a set of joint values to satisfy a desired locat ion of a tool is not as straig ht forward to solve. There are various methods of solution for the IK probl em that can be broadly classified into analytical or closed form and iterative solution techniques. The analytical solution techniques are feasible and less complex fo r manipulators with few DOF (typically < 6 DOF) whereas the numerical solution techniqu es can be applied for general manipulators with multiple chains. As the transformation Tn 0 in Equation (3-3) is a nonlinear function

PAGE 35

19 of the joint variables, the solution set in general is not unique. Also, if the specified location of the tool falls out of reach or in singular regions within the workspace of the robot manipulator, the existence of a solution is not guaranteed. It s hould be noted that the general pose of the end effector is desc ribed with six independent parameters, three for position and three for orientation. So, for the manipulator to arbitrarily position and orient the end effector, at least a six DOF mechanism is needed. If the manipulator has less than six DOF, it can only satisfy so many co nstraints as equal to its DOF and if the manipulator has more than six DOF, the additional DOF will provide for additional solution sets for a given pose of the manipulator . The synthesis tools de scribed in the next section employ iterative IK solution tec hniques to aid in th e design process. To achieve coordinated motion of the joints of a manipulator, the manipulator’s end effector velocity is to be mapped to the i ndividual joint velocities. The Jacobian matrix, or Jacobian for simplicity, performs this line ar transformation between the joint velocities and the end effector velocities and thus plays an important role in generating trajectories that are motion descriptions with spatial a nd temporal constraints. Mathematically, the Jacobian matrix is a multidimensional form of the derivative as expressed in Equation (36). For a robot manipulator with m DOF and n actuated joint variable s, the positions and orientations of the end effector (x) are a set of m equations that are functions of n joint variables (q). This can be expressed as: m i q q q q f xn i i , 3 , 2 , 1 ), , , , , (3 2 1 (3-5) Then the velocities of the end effector can be written as a function of the time derivatives of q as follows in matrix form:

PAGE 36

20 n n m m m n n mq q q q f q f q f q f q f q f q f q f q f x x x 2 1 2 1 2 2 2 1 2 1 2 1 1 1 2 1 (3-6) Or q J x (3-7) Or x J q 1 (3-8) Equation (3-7) represents the forward ve locity problem where the end effector velocity state is found from th e given joint rates while Equa tion (3-8) solves the inverse velocity problem when the joint rates for the given end effector velocity state are needed. In Equations (3-7 and 3-8),x is the m dimensional end effector velocity vector (m 6), q is the n dimensional joint velocity vector, and J denotes the mxn matrix of partial derivatives and is the Jacobian matrix. It is evident from the expression that the Jacobian is dependent on the manipulator’s pose as its el ements are functions of the joint variables. Although there are various formulations for the Jacobian (Crai g, 1989 and Tsai, 1999), the Jacobian formulation used in this work is expressed with referenc e to the end effector reference frame {n}. It should be noted that fo r manipulators with less than six DOF, the velocity state may contain only linear velocities or angular velo cities or a combination of both components with the number of compone nts not exceeding th e length of the end effector velocity vector m. The Jacobian matrix is used in the fru it harvesting manipulator synthesis as an analysis tool to detect singularities in the workspace of the manipulator. When the

PAGE 37

21 Jacobian matrix at a particular manipulator pose loses its full rank, that is, when there is a reduction in the number of linearly independent rows or columns, the manipulator is said to be in a singular configur ation. The singular configuratio ns of a manipulator can be found by setting the determinant of the Jacobian matrix to zero and solving the resulting algebraic equation. The two main types of singularities that co uld be found are the boundary singularities and the in terior singularities. As th eir names imply, the boundary singularities occur at the boundaries of th e manipulator workspace and the interior singularities occur inside the manipulator workspace. The Jacobian matrix is used to construct similar dexterity pe rformance indices for the fruit harvesting robot manipulator synthesis in chapter 6. For purposes of discussion in future chap ters, the robot manipulator workspace is defined as the volume of space the end eff ector can reach. More specifically, the reachable workspace and the dexterous worksp ace are defined as the volume of space within which every point can be reached by th e end effector in at least one orientation and the volume of space within which every poi nt can be reached by the end effector in all orientations, respectively. Kinematic Performance Indices The robot manipulator synthesi s for citrus fruit harvesti ng involves the selection of the basic kinematic structure, the number of joint-link pairs, and the determination of optimal dimensions for the joint-link pairs. These three phases of kinematic synthesis are termed as, type synthesis, number synthesis, and dimensional synt hesis by Erdman and Sandor (1984). In order to select a suitable configuration within th e given constraints, appropriate kinematic performance evaluation is needed. The two ma in kinematic criteria that have been formulated and used for an alysis in robotics research are workspace

PAGE 38

22 (Shaik and Datseris (1986), and Abdel-Male k et al. (1997)), and dexterity (Park and Brockett, 1994). Based on the dexterity criterion, singularity (P ai and Leu, 1992), isotropy (Angeles and Lopez-Cajun, 1992) , and condition number (Gosselin, 1990) indices have been proposed. An overview of the various kinematic performance indices can be found in research articles by Klein and Blaho (1987), Kim a nd Khosla (1991), and Lee et al. (1993). In this sect ion, the kinematic criteria used for agricultural manipulator developments in the past are reviewed. The manipulator design parameters such as task space, payload, and motion characteristics for the manipulator are discussed in chapter 8. Workspace The volume of space that the end effector ca n reach is defined as the workspace or the operational space of a manipulator a nd the workspace boundaries are typically characterized by the robot configurations (Car tesian, cylindrical et c.), link lengths and joint limits. The dexterous workspace is th e volume of space within which every point can be reached by the end effector in a ll possible orientations and the reachable workspace is the volume of space within which every point can be reached by the end effector in at least one orientation (Tsai, 1999). The workspace evaluation for an agricultural manipulator can be used primarily to verify its reach w ithin the fruit bearing zones. To evaluate and compare the operational space of the manipulators, a normalized area index has been used by Kondo, Monta, Shib ano and Mohri as one of the indices for the selection of a mechanism for tomato harvesting and was presented by Kondo (1998). The normalized area index is given as the ratio of the actual operation space of the manipulator on a plane to its ideal operat ional space generated by using all the link lengths for the workspace determination. Sa kai et al. (2002) used a normalized volume

PAGE 39

23 index, Vn to select a suitable configurati on for a watermelon harvesting robot. Vn is the ratio of the actual operationa l space of a manipulator to th e volume of a sphere (or the ideal operational space). The maximum value fo r this index is 1 and the closer the value to 1, the larger the operational space for the manipulator. The expression for the volume index with V as the actual work volume of the robot manipulator and L as the sum of the link lengths is: 3 43L V Vn (3-9) Two other kinematic indices based on the workspace of the manipulator were proposed by Kondo, Monta, Shibano, and M ohri in 1993 and Okamato, Shirai, Fujiura, and Kondo in 1992 termed as the redundant sp ace and the space for obstacle avoidance, respectively. Kondo (1998) presented these indices in detail. The redundant space was defined as the space formed by the middle point s after the manipulator’s base and the end point are fixed and illustrated in Figure 3-11. The space for obstacle avoidance was defined as the area formed by the links and the joints of a manipulator. For both the indices, the defined space increases as the DOF of the manipulator is increased. Dexterity Indices The ease of positioning and orienting movement of the end effector in the workspace is termed as kinematic dexter ity. A well known equation in robotics is, q q J v) ( (3-10) where J(q) (or J for simplicity) is the Jacobian matrix that maps a linear relationship from the joint space velocities (q) to the task space (or Cart esian space) velocities (v). For an

PAGE 40

24 n jointed manipulator with m task space degrees of freedom (DOF), the Jacobian will be an m x n matrix. The elements of the Jacobian matr ix are a function of the joint variables. The performance indices based on dexterity developed for robot synthesis and control were largely based on the Jacobian matri x. In this section, a discussion of the performance indices used in the past by agri cultural robotics researchers is presented. Apart from studying the operational space of the manipulator, the kinematic indices that were used in the design of manipulat ors for agricultural applications are robot manipulability (Ceres et al. (1998), and Kondo (1998)), manipulab ility ellipsoid (Sakai et al., 2002), and posture diversity (Kondo, 1998). Robot manipulability The concept of manipulabili ty introduced by Yoshikaw a (1985) is a quantitative measure of the manipulating ability of the robot ic mechanisms, which is the ability of the mechanism to position and orient the end-eff ector arbitrarily. The manipulability measure was defined as: ) det(TJJ w (3-11) The quadratic form of the Jacobian in Equation (3-11) helps to overcome the problem of non-square Jacobian matrices. For a non-redundant manipulator, that is, m = n, the above measure reduces to, ) det( J w (3-12) This manipulability measure is a local m easure of the mechanism’s capability to preserve its workspace volume at different postures. As the Jacobian varies over the entire workspace, so does the manipulability measure. The above measure of

PAGE 41

25 manipulability was also expressed as the square root of the product of eigenvalues of the symmetric matrix JJT or the product of singular values of the Jacobian. m mw ... ...2 1 2 1 (3-13) where 0 ...2 1 m are the eigenvalues. The singular values 0 ...2 1 m are obtained by performing the singular value decomposition (SVD) (Klema and Laub, 1980) of Jacobian (Equation 3-14). The larger the value of w, the better is the manipulation ability of the robot. SVD of Jacobian: TV U J (3-14) where Umxm and Vnxn are orthogonal matrices satisfying UUT = UTU = Im and VVT = VTV = In (Im, In are Identity matrices). The columns of U are the orthonormal eigenvectors of JJT and the columns of V are the orthonormal eigenvectors of JTJ. mxn is a diagonal matrix with the singular values arranged in descending order in the principal diagonal. Although the manipulability index can be us ed as a measure of distance from singularity, the components of JJT have different units leadin g to a problem in physical meaning. This problem and the ways to a ddress it will be discussed in chapter 6. The measure of manipulability is used in the design of a tomato harvesting robot as reported by Kondo (1998). After an analysis of the plant training system for tomatoes in Japan, the manipulator workspace as well as th e angle of approach to the fruits was determined. For this manipulator design, a posture with more than 80 % of the maximum manipulability was defined as the posture of high manipulability. This index was used as a selection criterion in th e design of the robot configuration. With the combined evaluation of operational space, manipulability, obstacle avoidance, and posture diversity

PAGE 42

26 on a simplified two-dimensional plane, a se ven DOF manipulator was chosen for the tomato picking task. Manipulability ellipsoid Yoshikawa (1985) related the manipulability index to the singular values of the Jacobian as presented in Equati on (3-13). He also showed that the subset of the realizable velocities in the m-DOF task space, using joint veloci ties within an unit sphere of ndimensional space, is an elli psoid with principal axes m mu u u ,... ,2 2 1 1, where ui’s are the ith column vector of U in Equation (3-14). This was termed as the manipulability ellipsoid (also, velocity ellipsoid). Figure 3-12 shows a representation of the manipulability ellipsoid. The dire ctions of the ellipsoid axes provide an indication of the ease of manipulation and the ellipsoid size repr esents the speed of manipulation. Thus an almost spherical ellipsoid with a large volum e will result in large manipulability values. An agricultural robot for harvesting wa termelons was designed based on analysis using the manipulability ellipsoid index as presented by Sakai et al. (2002). Comparison of cylindrical, polar, articulated and parallel manipulator c onfigurations using workspace analysis and manipulability ellipsoids led to the selection of the appropriate configuration for watermelon harvesting. It was reported that the non-variability of robot manipulability in the harvest space for the parallel configuratio n led to its selection. Posture diversity Kondo (1998) presented another measure spec ific to the design synthesis of an agricultural robot known as postu re diversity and applied for the development of a tomato harvesting robot. This performance index was not based on the Jacobian matrix but rather on the redundancy nature of the manipulator. A manipulator is redundant if it has more joint space DOF than the task space requirement . Posture diversity is defined as the angle

PAGE 43

27 range of the approaching direction of the manipulator end point while maintaining the position and orientation of th e end-effector. Figure 3-11 s hows the posture diversity description for a planar manipulat or. It is easy to see that la rge posture diversity (a large angle range) will increase the rate of succe ss for a given task, though it is not straight forward to apply this index for spatial manipulators.

PAGE 44

28 Figure 3-1. MAGALI apple picking arm: , , and T represent the three DOF (Grand D’Esnon et al., 1987). (a) (b) Figure 3-2. CITRUS picking ar m structures: (a) Pantograp hic showing motion pattern, (b) Telescopic (Rabatel et al., 1995).

PAGE 45

29 Figure 3-3. Citrus picking robot: Axes Z0 and Z1 represent the revolute joints and axis Z2 represents the prismatic joint(Harrell et al., 1988). Figure 3-4. Kubota arm: 1, 2, 3, and 4 represent the four DOF (Sarig, 1993). (a) (b) Figure 3-5. Greenhouse tomato harvesting robot. (a) Six DOF (b) Three DOF (Barelin et al., 1991).

PAGE 46

30 Figure 3-6. Tomato harvester manipulator mechan ism: s1 and s2 are the prismatic joints, and 3 through 7 represent the revolute jo ints (Kondo et al., 1996a). Figure 3-7. Picking arm structure for Agribot: 1, 2, 3, and 4 represent the four DOF (Ceres et al., 1998).

PAGE 47

31 Figure 3-8. Picking arm struct ure of first prototype (C avalieri and Plebe, 1996). Figure 3-9. Dual arm layout for the sec ond prototype (Muscato et al., 2005).

PAGE 48

32 Figure 3-10. Coordinate frame assignme nt and D-H parameters (Craig, 1989). Figure 3-11. Posture diversity (Kondo, 1998). Figure 3-12. Manipulability ellipsoid.

PAGE 49

33 Table 3-1. Joint combinations for various robot configurations S. No. Robot Configuration Number of DOF Base three DOF 1 2 3 4 5 Cartesian Cylindrical Spherical Articulated Redundant 3 3 3 3-6 >6 p-p-p r-p-p r-r-p r-r-r Any of the above

PAGE 50

34Table 3-2. Reported harvesting performa nces of agricultural manipulators Research Work Robot Configuration Testing (Open field or Greenhouse) Cycle Time1 sec/fruit % of harvested fruits2 System limitations Grand D’Esnon et al. (1987): apple Harrell et al. (1988): citrus Juste and Sevila (1991): citrus Kondo et al. (1996): cherry tomato Muscato et al. (2005): citrus Spherical Spherical Spherical Articulated (5 DOF) Cartesian with an oblique axis Open Field Open Field Open Field Greenhouse Open Field 4 3-7 7-8 3-5 7.5 – 9.9 50 % on the hedge 75% of attempted cycles 38.7 % on the hedge 70 % of attempted cycles NA Machine vision, cycle time, grasping motion Fruit occlusion, arm collision with limbs, arm reach, arm structure Arm reach, machine vision, cycle time Fruit position, end effector Arm size, angular layout, cycle time 1 Total time consumed to pick a fruit, 2 Irrespective of damaged or undamaged.

PAGE 51

35 CHAPTER 4 METHODS AND PROCEDURES An overview of the methods and procedur es used to accomplish the objectives of this research work are presented in this ch apter. The primary objectives as stated in chapter 2 are: Select a suitable manipulator configuration for the citr us harvesting task using robot synthesis tools and performance metrics. Derive the robot manipulator requirements for the citrus harvesting task and design a four DOF manipulator that represents the distal joint-link pairs of the selected configuration powered by hydraulic means. Provide an electro-hydraulic test ci rcuit for the arm prototype for VCMM Implement a joint level closed loop c ontrol system and study the manipulator performance through laboratory experiments. Robot Manipulator Configuration Sel ection for Citrus Harvesting Task The kinematic synthesis objective that in cludes the type, number and dimensional selection of the robot joint-link pairs was achieved through the mode ling and analysis of alternative configurations. The fi rst step in this objective was to choose cost effective as well as adequately featured robot synthesis tools. The evaluation of Robotics Toolbox for Matlab (Corke, 1996) and RobotectPro (Nay ar, 2002) for the specified kinematic synthesis capabilities led to th eir selection and usage in this research work (Sivaraman et al., 2006). The next step was to choose appr opriate performance cr iteria to compare and contrast the alternative c onfigurations. A study of the previous agricultural robot development efforts (Ceres et al., 19 98, Kondo, 1998, and Sakai et al., 2002) and additional literature on the pr oper application of the performance indices led to the

PAGE 52

36 selection of two potential de xterity indices based on the ma nipulator Jacobian matrix. The application of these i ndices for the citrus harvesting manipulator design was examined through a comparison study of tw o standard manipulator configurations (Sivaraman and Burks, 2006). The final step for completion of this ob jective is the actual application of the selected modeling tools and the performance indi ces to evaluate alternatives with specific attention to manipulator workspace and manipul ator dexterity in the task space. In an effort to reduce the search space of availabl e alternatives, four primary configurations were selected for comparison with knowledge from previous research efforts as well as the task space. The concept of using a harv esting arm positioner to reduce the workspace for the fruit picking manipulator as presented in a few research prototypes (Sarig, 1993) is adapted here. The actual and the reduced workspace were modeled in Matlab. The performance analyses of these alternatives led to the selection of a potential seven DOF manipulator with a dual roll-pitc h pair forming the distal joints as shown in Figure 4-1. Mechanical Design of the Four DOF Manipul ator Comprising the Distal Joints of the Selected Configuration The second objective of this research is th e mechanical design and fabrication of a four DOF manipulator that co mprise the last four jointlink pairs of the selected configuration. As one of the in direct objectives for the propo sed arm is to be able to harvest fruits from inside the canopy, the distal joint-link pairs play a crucial role as they have to be able to access multiple fruit posi tions with minimal movement from the lower joint-link pairs, in case, they are restricted due to obstacles in the workspace. Also, the distal joint-links contribute to the orientation of the end eff ector which is crucial for fruit harvesting as the access to the fruit positions might not always be straightforward.

PAGE 53

37 Additionally, although the dexterity analysis of the various configurations suggested the potential for a seven DOF manipulator with a prismatic member, more thorough analysis is needed for conclusive evidence. These f actors and economic consid erations led to the decision of developing only the distal joint-link pairs. The necessary joint torque va lues were determined from trajectory simulations and the manipulator performance specifications for citrus fruit harvesting. Hydraulic actuation was chosen for all the rotary joints due to their high power to weight ratio and the elimination of additional gear reductions, which are crucial for direct drive manipulators, as well as cons ideration of economic factors. The roll-pitch pairs were designed for high ease of assembly in SolidWorks (2003) with a top-down design approach. Due consideration was given for act uator and sensor placement to preserve symmetry and mass balance in the joints. The hollow square link cross-sections provided high stiffness and adequate space for actua tor placement. The selection of other mechanical components such as the bearings, shafts, gears, etc. was done using standard mechanical design procedures. The completed design was machined and assembled at the Agricultural and Biological Engineering mach ine shop facility. Figure 4-2 shows the arm assembly. Hydraulic Test Circuit and Joint Level Control System The final objective of this research wo rk is the design and implementation of a hydraulic test circuit for electr o-hydraulic valve cont rol of the rotary joint actuators. The hydraulic components were selected from the design specifica tions for the robot manipulator. A fixed displacement pump with 7.570 L/min and 6895 kPa flow and pressure capacity, respectively, was used to pow er all four joint actuators. The actuators selected were of the rotary vane type w ith limited joint range. Proportional dual solenoid

PAGE 54

38 valves and solenoid drivers were used for the valve control of the actuators. The maximum pressure setting for the circuit was used using a pump side pressure relief valve. The mechanical deadband of the valv es were reduced through the current setting on the controllers. Rotary potentiometers we re used for position feedback from the individual joints. A microcomputer based da ta acquisition (DAQ) and control system was implemented with C++ programming usi ng Microsoft Foundation Classes (MFC). Manipulator Performance Tests After the prototype was built and installe d on a pedestal in the laboratory, the electro-hydraulic circuit was completed as e xplained in the previous sections. Following the manipulator joint mode control system implementation, two main experiments were designed to validate the manipulator perfor mance. The first set of experiments was designed to verify the end effector fruit detachment force (FDF) capability through the use of a force gauge and a mechanical vice to hold the gauge in place. The manipulator end point was attached to the measurement poi nt on the force gauge and a near linear pull was executed. The exerted force before stalli ng of the joints was recorded for three repetitions. The obtained values satisfied the re quirements for citrus harvesting as studied from actual field experiments. The pressure and temperature settings for the experiments were kept constant through out. The second set of experiments was designed to verify the kinematic model for the four DOF manipulator. In order to accomplish this task, the end point positions corresponding to a set of joint movements were recorded through the use of a metric scale grid and a plumb bob for height measurement. The recorded measurements were then verified agains t the calculated values from the forward kinematic analysis of the robot manipulator.

PAGE 55

39 A B Figure 4-1. Robot manipulator configuration for citrus harvesting A) Symbolic representation and B) RobotectPro model (A) (B) Figure 4-2. Arm assembly (A) SolidWo rks model, (B) Actual prototype.

PAGE 56

40 CHAPTER 5 ROBOT MANIPULATOR SYNTHESIS: MODELING TOOLS Introduction Long-standing interest in the applicati on of robotic automa tion to the labor intensive agricultural task of fruit harves ting has led to the development of robot manipulators as documented by Grand D’Es non et al. (1987), Harre ll et al. (1988), Balerin et al. (1991), Sarig (1993), Rabatel et al. (1995), Kondo et al . (1996a), Cavalieri and Plebe (1996), Ceres et al . (1998), and Muscato et al . (2005) among others. The apparent lag in commercializi ng the prototypes that resulted from past developments is primarily due to the high cost to benefit ra tio. The technical shortfalls from two of the previous research efforts are c ited here: 80% detection of citrus fruits is reported by Juste and Sevila (1991), of which, 61% was reporte d to have foliage and branches in the trajectory of the arm leading to picking fa ilures. Kassay and Slaughter (1993) reported a detection rate of about 70% and a picking rate of about 42% for apples. Again the presence of leaf and branch occlusions in the fruit picking path reduced the detection rates and thus the picking efficiency. Se lecting the right se nsing technology and manipulator configuration will enhance the detection capability and the manipulator dexterity, which should improve the picking efficiency. In the pa st, robot arms for agriculture are simplified in terms of the ar m mobility as well as their construction. This is evident as many of the pa st research efforts adapted the basic three DOF spherical configuration. This could be attributed to an intended reduction in development time and cost as well as the unavailability of suitable modeling and analysis tools.

PAGE 57

41 This chapter demonstrates the usage of numerical and graphical modeling tools for the development of robot manipulators with an application example as presented by Sivaraman et al (2006). The tools used ar e Matlab Robotics Toolbox (Corke, 1996) and RobotectPro (Nayar, 2002). As kinematic synthe sis is the primary focus, only a cursory coverage of the dynamic analyses capa bilities of the tools is provided. Manipulator Synthesis The general product design specifications for robot manipulator design are: Type and layout of the joints. Geometry of the links. Materials, weight and di mensions of the links. Joint transmissions, se nsors and actuators. Verified dexterity, workspace, accuracy, and static and dynamic performance. In addition to these general specificati ons, the designer for a tree fruit harvesting manipulator must deal with the uncertainty of the workspace, such as, variability in fruit distribution, fruit occlusion caused by leaves and branches, and varying crop conditions between successive harvesting motions as observed by Edan and Miles (1994). Traditionally when the designer is faced with numerous choices for the type and layout of the joints in the initi al design phase, selection is base d on the knowledge of the task, the workspace and his/her own experience. Any erro r in the physical system resulting from this process would incur additional cost and time to the project, at the least. An alternative to this approach is to employ soft ware tools that aid the designer in the design process. The use of modern synthesis and anal ysis software tools can give the designer the flexibility and agility in exploring a lternatives by building computer generated models. Additionally, efficient cycle times can be calculated by generation of trajectory simulations to meet the economic thres hold for the fruit harvesting application.

PAGE 58

42 Robot manipulator modeling consists of a geometrical definition along with a kinematical description of the linkages. Th e geometrical definition can be accomplished by creating representative three-dimensiona l (3D) computer aided graphic models whereas the kinematic entities describing the relations betwee n links, velocities, accelerations and other characte ristics of the manipulator can be obtained from robot kinematic theory based upon D-H parameters as presented in chapter 3. The structural design of the components of a robot manipulat or uses the optimized geometric entities resulting from the previous stages. T hough there are numerous software packages available for 3D modeling and motion simulatio n, there is not one all inclusive package that could output the exact physical and functional descriptio n of the robot. The simulation itself consists of the kinematic and dynamic parts de pending upon whether or not the actuator forces and torques are cons idered when generating the trajectories. Once the functional description of the manipulator is finalized, any of the widely available solid modeling tools could be used for the accurate description of the robot’s 3D geometry and an extensive structur al analysis could be performed. Kinematic Synthesis Tool Requirements From the general design specifications and additional requirements for an agricultural setting with workspace uncertainties , a kinematic design tool is expected to possess the following: Define multiple joint-link pairs and describe transformations between the joint-link pairs. Perform forward and inve rse kinematic analyses. Generate time-varying trajectories and ev aluate manipulator kinematics for those trajectories. Create three-dimensional geometry from given input for graphical simulations.

PAGE 59

43 Have built-in basic performance measures or allow construction of performance measures to evaluate and verify design alternatives. Have numerical and pl ot output capabilities. Apart from these, additional qualities such as, ease of creating alternative configurations, ability to accept dynamic parameters, perform forward and inverse dynamics (to obtain joint accelerations and to rques, respectively), ability to extend performance studies throughout the workspace, etc., will be extremely useful. For example, due to the variability in the fr uit picking environment, a good performance measure for the manipulator design can be to evaluate the dexterity of the manipulator along the workspace. Some of the packages available to model and simulate general mechanisms and robots are: Robotics Toolbox, a co llection of functions written in Matlab for serial link robot design, RobotectPro, a modeling and anal ysis tool for serial link robot design, RobotAssist, a robot modeling and control package, and Cimstation Robotics, a 3D simulation software for manufacturing au tomation. All the software packages are available for the Windows operating system and have basic capabilities such as, D-H parameter based robot creation, forward kinematic (FK) anal ysis, inverse kinematic (IK) analysis, and trajectory gene ration. They differ in the av ailability of performance measures, control diagnostics, user interface, etc. For this research work on selection and synthesis of a robot manipulator for fr uit harvesting, the Robotics Toolbox and RobotectPro were used and the following sectio n is a cursory introduction and evaluation of the modeling and analysis capabilities of these tools.

PAGE 60

44 Matlab Robotics Toolbox and RobotectPro Application example To demonstrate the usage and features of the Robotics Toolbox and RobotectPro, an all-revolute serial manipulator loosely de rived from the spherica lly configured robot arm with pantographic prismatic movement pr esented in the previous research efforts (Grand D’Esnon (1985), and Pellenc et. al. ( 1990)) is modeled and analyzed as an articulated five DOF (AFD) arm. The reas on for this choice was due to its well-known base configuration. The five DOF arm was origin ally restricted to ope rate with three DOF as it performed a pantographic-prismatic move ment along the line of sight of the camera mounted at the base of the robot. The third, f ourth and fifth joints worked simultaneously to achieve this motion. For this study, the arm movement constraints were removed for simplicity. The first step in constructing the m odel for this robot was to attach coordinate frames to the joint-link pa irs as shown in Figure 5-1. The link object sizes and offsets were obtai ned from a scaled drawing of the robot as given in the US patent for Pellenc et al . (1990) assuming a scale of 1:12. The modified D-H parameters for this robot are presented in Table 5-1. Once the D-H parameters were obtained, the information was used to constr uct the robot in the Robotics Toolbox and the RobotectPro software package. Even though the kinematic synthesis qu alities of the two tools are the prime focus, their dynamic capabili ties are discussed as well for the sake of completeness. Several simplifying assumptions were made regarding the AFD arm as follows: The links are of uniform ly distributed mass, The link material is aluminum (mass density, = 2700 kg/m3), The robot objects are perfectly rigid, The links are of hollow rectangular or circular cross-sections.

PAGE 61

45 Robot definition In Matlab Robotics Toolbox, the paramete rs for serial-link manipulators are encapsulated in Matlab objects. This allows the creation of robot obj ects for any seriallink manipulator. The Toolbox is capable of numerical simulations accompanied by a graphical output and is base d on the D-H and modified DH parameter notations. Once the link construct has the kinematic parame ters, the robot object can be created by concatenating the link objects. For a thorough investigation of the dynamic characteristics of the robot arm, additional parameters can be defined by adding arguments corresponding to the link mass, the link center of gravity (COG) with respect to the link coordinate frame as a threedimensional vect or, the link inertia tensor elements about the link COG, the motor armature inertia, the g ear reduction ratio, and the friction (viscous and coulomb) parameters. For this study, the mo tor inertia is taken to be negligible and the friction components are neglected. As the in ertia tensor is calculated about the link COG, the problem is simplified to finding only the principal mass moments of inertia. Also, the default orientation of the base c oordinate frame is defined with the Z-axis pointing upwards. As the first re volute joint axis of AFD arm is parallel to the horizontal, the Z-axis has to be reoriented to coincide with the joint axis. This is accomplished by a base homogeneous transformation matrix. An example link object and robot construction in Matlab command window with few sub-a ssignments for the AFD arm is shown below with length in m, angle in rad, and mass in kg. l{4} = link([0 .5486 0 0 0],”modified”); %link kinematic definition l{4}.m = rho * 0.0016; %link mass = density x volume l{4}.r = [0.2743 0 0]; %link COG l{4}.I = [.1199 .1222 .5427 0 0 0]; %inertia vector about link COG l{4}.qlim = [0 2.87979]; %joint limits AFD_mdh = robot(l, “AFD_mdh”); %AFD robot object definition

PAGE 62

46 Once the robot object is constr ucted, the robot links can be plotted as point-to-point connections of the origins of the subsequent coordinate frame assignments as shown in Figure 5-2. Although rudimentary, the plots satisfy the need for quick evaluation of alternatives. The trailing “mdh” in the robot name denotes th at modified D-H parameters are being used. In RobotectPro, the robot elements are mode led as joint-link objects in one of three formats available for modeling, D-H paramete r, joint plus homogeneous transformation, and joint and beam model. Of the three m odeling formats, the D-H parameter uses the modified D-H parameters, the joint plus homogeneous transform specifies a joint translation or rotation (for prismatic or revol ute) followed by a transformation matrix that transforms the elements to the final coordi nate system and the jo int and beam format models the joint-link pairs as a series of mechanical objects consisting of four parts, a joint, an input transformation, a beam, and an output transformation. The joint and beam modeling format should be used to include ad ditional mechanical properties such as joint mass, stiffness, beam geometry (solid or hollow cross sections), material density, and Young’s and shear moduli of the beam material in the robot model. The default values can be used where appropriate. The actuat or, transmission, and sensor parameters are common to all formats. It should be noted that once the model format is chosen for the first element creation in the menu and dial og box driven user interface, the following elements default to the same format. In addi tion to the serial link robot elements, tool, base, environment and gravity objects can be defined. As the interaction between a robot and its environment occur through its tools, the definition of tool objects play a vital role in the robot analysis. RobotectPro allows multip le tool objects to be attached to pre-

PAGE 63

47 defined joint-link objects along the serial chain. Figure 5-3 shows the AFD arm joint and beam model created using a se quence of data entry dialogs to specify the joint type (revolute or prismatic), actuated / passive / constrained, joint range limits, joint mass, inertia and stiffness, beam geometry, beam material properties, actuator/gear-train, sensor, accuracy and face color fo r individual joint and beam pairs. Forward and inverse kinematics In the Robotics Toolbox, robot poses can be defined by creating joint coordinate vectors that provide the joint values to be used for the FK and IK solutions. The FK and IK algorithms are implemented as Matlab r outines and can be called from the Matlab command line for usage. A typical transforma tion matrix output by solving the FK using a set of joint vectors is presented in Equati on (5-1). The first three columns comprise the rotation matrix and the last column denotes the translation in hom ogeneous coordinates. The translation is in the same units as the i nput arguments to the li nk object, in units of meters in this case. T = 1.0000 0.0000 0.0000 0.3048 0.0000 0.0000 -1.0000 0.0000 (5-1) 0.0000 1.0000 0.0000 1.2496 0 0 0 1.0000 Analytical solution methods for IK become tedious as the number of DOF of the manipulator increase, the T oolbox provides an iterative so lution technique for the IK problem using pseudo inverse of manipulator Jacobian and thus ca nnot provide all the solutions. Also, the solution accuracy depends on the initial guess. For manipulators with fewer than six DOF, a mask matrix specifying the Cartesian DOF to be ignored in finding a solution should be provided as an argument to the IK routine. The mask matrix contains

PAGE 64

48 six elements denoting the translation and rota tion with each element taking a binary (0 or 1) value where 0’s denote the ignored DOF’s. In RobotectPro, the robot arm can be conf igured using the pose control dialog which has slider controls with their limits denoting the joint limits. The calculations for the centers of masses, inertia values, etc. ar e performed internally by the software from the given kinematic, mechanical and material properties. The FK and IK solvers are built into the package and are used in the kinematic analyses. The default IK algorithm uses a numerical optimization technique using pseudo in verse of manipulator Jacobian to arrive at the solution. However, there is a possibility to test othe r algorithms written in Matlab or Excel using the input and output format specified in RobotectPro. Trajectory generation To evaluate the manipulator’s motion perf ormance, joint space and Cartesian space trajectories can be created in Robotic s Toolbox using fifth order polynomial interpolation. Once the trajec tories are generated, the velo city and acceleration motion profiles can be retrieved for further studies. Many of the Toolbox routines can operate on the generated trajectories for each time step. Also, the trajectories can be animated by plotting the robot through the sequence of joint values. The joint position, velocity and acceleration profiles for a movement from the default pose along the Cartesian Xdirection for the AFD model is shown in Figure 5-4. The joint space and Cartesian space trajec tories in RobotectPro can be generated using either the linear inte rpolation method or the quintic (fifth orde r) polynomial method. The quintic polynomial method guarantee s continuity of position, velocity, and acceleration between successive po ints and is more useful for practical applications and realistic simulations, although, the linear interp olation method is computationally easier

PAGE 65

49 and faster. The Cartesian trajectory generation can be used to check for available IK solutions using the default or user-provided algorithm. Th e default algorithm can be tuned for solution accuracy using the corres ponding dialog box entrie s. The velocity and acceleration values are not readily available as output from the software. The joint coordinate values obtained from a simple Cartesian motion in the X direction of the world coordinate system for the AFD arm is plotted in Figure 5-5. Performance measures The Jacobian matrix forms the basis for a ll performance measures in both Robotics Toolbox and RobotectPro. In Robotics Toolbox, th e Jacobian can be calculated in both the base frame and the tool frame. The matrix methods in Robotics Toolbox can be effectively used for advanced analysis of th e Jacobian for dexterity performance of the manipulator at various poses. As Robotics To olbox shares all features of the Matlab programming environment, user written perf ormance measures and trajectory generation schemes can be applied along side the de fault Toolbox routines. This feature is effectively used in developing a routine for performing manipulability analysis and plotting the manipulability ellipsoid s and is presented in chapter 6. The dexterity analysis tool in RobotectP ro utilizes two different Jacobians for translation and rotation thereby avoiding e rroneous results due to the unit dependence nature of the Jacobian computation. This methodology is discussed in more detail in chapter 6. The singular values of the Jacobian that give the distan ce to singular points along each axis of the reference frame are liste d for the current manipulator configuration for both the position and orientation. Also, mani pulability ellipsoids are superimposed on the referred tool frame with the volume of the ellipsoid being a numerical guidance

PAGE 66

50 (larger volume, better dexterity) as to wh ether or not the arm is in a singular configuration. The axes lengths of the ellips oids are proportional to the singular values. The dexterity of the manipulator also gives information on its workspace. For example, in harvesting, such an analysis will shed light on whether a particular fruit in 3D space is reachable by the arm and on the ease of movement from current configuration to the fruit picking configur ation. The manipulability ellipsoids can be plotted along a trajectory providing a better understanding of the arm’s mobility through visual means. Figure 5-6 shows the translati on ellipsoid for the AFD arm at an arbitrary pose. Additional features To study the equations of motion with cons ideration to the applied forces/torques, the manipulator forward and inverse dynamics is solved. The algorithms to solve the arm dynamics are built-in as routines in the Robotics Toolbox. The Toolbox uses a recursive Newton-Euler formulation for computing th e inverse dynamics. The Toolbox also has functions to compute the load due to gravity, the inertia as seen by any of the joints, and the Coriolis and centripetal to rque terms. In addition to these, the Robotics Toolbox has a routine that can be used to dr ive a graphical robot with slid er controls for the range of motion of the joints. In RobotectPro, the static force/torque analys is dialog is used to determine the joint or actuator torques (for an all-revolute case as here) due to the gravitational loads along with any external forces and moments. Th e joint transmission values entered during model creation are used to tran sform the joint torque values into the actuator torque values. The numerical values are displayed on the dialog box with additional options of displaying the vectors and the joint or actua tor torques along a trajectory. The dynamic

PAGE 67

51 force/torque dialog is used to compute the inverse dynamics solution for the robot arm. At present, the forward dynamics problem cannot be solved using RobotectPro. This might be a shortcoming in the later stages of the design when the designer intends to verify his actuator selections through motion simulations. For the reverse computation, a Newton-Euler formulation is used with the eff ects of inertia and Coriolis forces included. The results aid the designer in selecting the actuator sizes needed for the desired performance of the manipulator. If the torque values are computed for pure gravitational loads, the dynamic torque analysis will pr oduce the same result as the static torque analysis. The position and orientation accuracy and re peatability errors (three each) can be obtained from the respective analyses menus. Th ese data can be used to verify the arm’s performance in terms of its positioning capability. The tolerances in backlash, transmission ratios, precision of sensors and controllers to us e on the joints are determined from the accuracy and repeatability errors. The errors can be displayed as vectors at the tool frame with the lengths of the vectors relating to the magnitude of the errors. The deflection/backlash analysis dialog box in RobotectPro can be used to design the stiffness of the links by testing the deflect ion at the tool tip due to gravitational loads and other external forces or torques. The effect of loadi ng at different parts of the manipulator and the resulting deflection at ot her parts of the manipulator can be studied. The ability to attach tools at any point along the serial chain helps in this task. The beam deflection model is used for the beams and a torsional stiffness model is used for the

PAGE 68

52 revolute joints. The values for the forces and torques entered in this analysis are carried over to the static and dynamic force /torque analysis discussed earlier. It should be noted that accuracy of the re sults obtained from the arm models created in Robotics Toolbox and RobotectPro largel y depend on the exactness of the model parameters input by the user. Additional inform ation on all of these analysis tools can be found in Robotics Toolbox for Matlab (ver sion 7) manual and RobotectPro manual. Robot synthesis tools comparison Using the AFD arm configuration as an example, a study on the modeling and analysis features of Robotics Toolbox a nd RobotectPro was completed. The inferences made from this study are presented in Table 5-2. Summary and Conclusions Development of a high-performance robotic fruit harvesting arm will require the efficient use of available computer assisted synthesis and analysis techniques/tools. This chapter provided an overview of two of the appropriate modeling and simulation tools specific to the development of multi DOF r obot manipulators. Of the two modeling tools considered, both are valuable research and le arning tools. The Toolbox allows the user to manipulate the matrices and try new algorithms , but, the current graphical capability and robot element definitions limit its potential without additional developmental effort by the user. The Toolbox can serve as a fast-paced evaluation tool in the early stages of the design, and as a comparison tool for the result s from other software. On the other hand, RobotectPro is a full-featured modeling tool wh ich is flexible enough for the ardent user to try his/her own kinematic an alysis algorithms. One main feat ure as mentioned earlier is the various robot definition c hoices available to the user. Also, RobotectPro’s torque analysis serves the purpose of providi ng the designer with a start-point in

PAGE 69

53 designing/selecting the drive components for the system. Careful analysis of robot parameters with these tools greatly reduces the development time and cost, and increases the accuracy of component selections. The objective of selecting a suitable ma nipulator configuration as well as the selection of appropriate actua tor components for a citrus harvesting manipulator, detailed in later chapters, are realized utilizing these software tools.

PAGE 70

54 Figure 5-1. Link frame assignment for the AFD arm. Figure 5-2. AFD arm represen tation in Robotics Toolbox. Figure 5-3. AFD arm model created in RobotectPro.

PAGE 71

55 Figure 5-4. Joint position, velocity, and accelerat ion profiles from trajectory generation in the Robotics Toolbox. Figure 5-5. Joint coordinate values for a sample AFD arm trajectory generated in RobotectPro.

PAGE 72

56 Figure 5-6. Dexterity an alysis in RobotectPro. Table 5-1. Kinematic parameters for the AFD arm. Link, i Link length, ai-1 m Twist angle, i-1 deg Link offset, di m Joint angle, i deg 1 2 3 4 5 0 0 -0.3048 0.5486 0.5486 0 -90 -90 0 0 0 0.1524 0 0 0 1 2 3 4 5 Table 5-2. Robotics Toolbox and RobotectPro comparison. Robotics Toolbox RobotectPro Assigns a single matrix with all the kinematic and dynamic details for a robot Is an interactive modeling tool with kinematic and dynamic details derived from user input Model creation is based only on D-H parameter convention Multiple modeling formats are available providing more flexibility for the designer Has FK, IK, forward dynamics, and inverse dynamics computation algorithms FK, IK, and inverse dynamics solvers are available Robot is represented as a stick figure Robot is represented as a solid model Ready access to parameters such as the Jacobian, velocity and acceleration for further analysis The values of the parameters are not readily available to the user. Has limited analysis capabilities without additional programming Has a wide array of built in analysis tools

PAGE 73

57 CHAPTER 6 KINEMATIC DEXTERITY INDICES FOR CITRUS HARVESTING ROBOT CONFIGURATION SELECTION Introduction Agricultural harvesting manipulators face the daunting task of working in an unstructured environment. As such, their de sign requires an unders tanding of the plant architecture as well as the patt ern of distribution of fruits or vegetables within the plant. The majority of past design efforts sele cted the arm configuration without much consideration for dexterity and nimbleness. This could be attributed to the fact that the primary attention of these efforts was on te sting and implementing the visual sensing techniques and grasping technologies. The re sults of these prototypes and the need for manipulator design improvement have been cited by Sarig (1993), Kassay and Slaughter (1993), Vittor et al. (2003), and Hannan and Burks (2004). In order to evaluate the suitability of a robot configuration for a desired application, performance indices are needed. In this chapte r, a framework for the selection of the most appropriate task-specific performance measures for the design and analysis of agricultural robots will be presented. This topic will be discussed with reference to the development of a citrus harvesting manipulator, but it c ould be generalized to other agricultural applications. It is assumed that an operat ing vision system that includes calibrated camera(s) and an image processing algorithm is in place to detect the fruits, and a suitable end effector is available to handle delicate fruits.

PAGE 74

58 Robot Kinematic Performance Indices A review of evaluation indices used by prev ious researchers for agricultural robot design and analysis was presented in chapter 3. Of these, the workspace and manipulability indices were iden tified to be appropriate for th e design and analysis of the citrus harvesting manipulator. For proper a pplication of these indices, care should be taken to address the presence of mixed units in the Jacobian matrix formulation, the dimensional scaling issues while comparing al ternatives, and the dependence of dexterity measures on the number of DOF of the mani pulator (also known as the order of the manipulator). The physical inconsistency of the manipulability measure based on the manipulator Jacobian and its transpose was pointed out by Doty et al. (1995) and Schwartz et al. (2002). Furthe r, it was shown that the ei genvalue formulation of the Jacobian that yields the manipulability ellipso ids is physically incons istent as the results depend on the units used to derive the matr ix. In addition, due to the scale and order dependent nature of the manipulability measure, comparison between various manipulator configurations is less than pe rfect. In this chapter, the alternative formulations that have been proposed in the literature to circumvent the above mentioned issues in using the robot manipulability a nd manipulability ellipsoids as performance indices are discussed and applied for the evaluation and comparison of two six DOF configurations as related to citrus fruit harvesting. Proposed Indices for Agricultural Robot Design and Analysis Translational and rotational manipulability In order to address the p hysical inconsistency of the manipulability measure stemming from the presence of both transla tional and rotational parameters in the Jacobian matrix, a simple solution is to form two Jacobians corresponding to the

PAGE 75

59 translation and rotation of the end effector (Yoshikawa (1991), Lee (1997), Lee and Won (1999), and Bowling and Khatib (2005)). The underlying assumption for this formulation is that the manipulator consists of a na DOF arm portion and an nw DOF wrist portion. The Jacobians thus created can be used to describe a translational manipulability and a rotational manipulab ility measure, as presen ted by Yoshikawa (1991): ) det(T T T TJ J w (6-1) ) det(T R R RJ J w (6-2) where, subscripts T and R denote translation and rotati on, respectively, and superscript T denotes the transpose of the matrix. The tran slation and rotation Jac obian matrices could be represented as in Equations (6-3 and 6-4) derived from Equation (3-6) where the vectors T z y xt t t ] [ and T z y xr r r ] [ represent the tool tip tr anslations and rotations, respectively. From the translational a nd rotational Jacobian expressions, the corresponding manipulability ellip soids can be plotted and used for design and analysis. n n z z z n y y y n x x x z y xq q q q t q t q t q t q t q t q t q t q t t t t 2 1 2 1 2 1 2 1 (6-3) n n z z z n y y y n x x x z y xq q q q r q r q r q r q r q r q r q r q r r r r 2 1 2 1 2 1 2 1 (6-4) Two other problems with the applicati on of the manipulability measure for manipulator design are the orde r and scale dependency. These two problems are an issue

PAGE 76

60 when comparing manipulators of different types and sizes. For instance, referring to Equation (3-13), the transl ational manipulability meas ure has the dimension of 2 / m where the order m, denoting the task space DOF for tr anslation, has a value of two for planar manipulators and three for sp atial manipulators and the eigenvalue has the dimension of [length]2. Thus, the manipulabil ity measure is order dependent with a dimension of [length]m and carry different physical meanings for planar and spatial manipulators. Also, the dimensional scal e of the manipulator influences the manipulability measure and do not allow an e qual comparison between shorter and longer manipulators. Kim and Khosla (1991) proposed a solution to address the order and scale dependency of the manipulability measure in the form of a relative measure of manipulability. This relative manipulability is given as: N M Mr (6-5) m TJJ M ) det( (6-6) where, M is the geometric mean and represents an average measure of manipulability independent of the order m, and N is the dimensional factor used to normalize the index thereby providing equal comparison for mani pulators with different link lengths. For example, if the manipulabili ty measure has units of [length]2, then N can be defined as a function of the total leng th of the manipulator l. The definitions for N and l are as follows. 2] [l N (6-7) n i il l1 (6-8)

PAGE 77

61 2 2 i i id a l (6-9) where, il is the ith link length with ai and di representing the D-H parameters for link lengths and joint offsets. Directional invariance of dexterity The condition number of a matr ix is defined as the ratio of its largest singular value to its smallest singular value and can be repr esented as in Equation (6-10) with reference to Equation (3-13). m Jcond 1 (6-10) From Equation (6-10), it is apparent that the condition number does not suffer from scale dependency, but lacks in an analytical representation as a function of joint angles. The condition number of the manipulator Jac obian has been used as a measure of the manipulator poses’s proximity to singul arity with a minimum value of 1 and no maximum. The points where the condition num ber is 1, i.e., with identical singular values, are termed isotropic points. At the isotropic points, the manipulability ellipsoid becomes a circle, representing the uniformity of manipulability ease in all directions, and can be termed as the directional invariance of dexterity (DID). The reciprocal of the condition number is better suited for this purpose as it is bound between 0 and 1 as identified by Singh and Rastegar (1995). Valu es denote singular points at 0 and isotropic points at 1. This index appear s as the kinematic conditioni ng index (KCI) in Angeles (1997) and as the global isotropy index (GII) in Stocco et al. (1998). In the context of an agricultural task, the design of a manipulator with high DID will be beneficial as it improves the flexibility of ta sk approach and operation.

PAGE 78

62 In the next section, two six DOF general manipulator configurations are designed and used for analyzing the above-mentioned kinematic performance indices for their application potential with regards to th e development of th e citrus harvesting manipulator. Additionally, the general concept fo r the robotic system is laid out and the citrus harvesting task requirements are specified. Application Example Citrus tree layout a nd fruit distribution For proper kinematic and geometric design of agricultural manipulators, task space knowledge is essential. In this study, harvesting of citrus tree fruits is the task at hand. Citrus trees have an elliptic al structure when grown naturally (with minimal or no pruning and hedging), and the majority of Florid a citrus groves follow this plant training method for the first few years. The hedging and pruning done beyond this is primarily to keep the alleyway clear and do not alter the tree structure much. Studies in the past (Schertz and Brown (1968), and Juste et al. (1988)) have shown that about 90% of the fruits grow within 1 m of the outer canopy surface. Economic analyses (Harrell, 1987) have shown that successful robotic harvesting of 90% of the fruits will yield profitable results. These studies have also shown that there is inherent variability in the fruit positions. Figure 6-1 shows a typica l Florida citrus grove layout. Basic robotic system layout As can be seen from the dimensional layout of the citrus trees, coverage of the entire workspace would require a manipulator with long links and a large operational space. This could be overcome by using a harvesting arm positioner (HAP), such as a boom with a platform attached to its end to carry a picking arm. Th e HAP places the fruit picking manipulator, which does the actual pick ing of fruits, at predefined zones along

PAGE 79

63 the tree canopy. This method has been implemented in a few design prototypes, as presented by Sarig (1993). The original tree space volume and a sample reduced workspace volume for the design of the robot ic picking arm through the use of HAP are shown in Figure 6-2. In additi on, it is noted that the seri ally configured open-chain manipulators are effective for tree fruit harves ting applications due to their smaller footprint and extensive workspace as comp ared with the parallel configurations. Analysis of citrus harves ting robot configurations Fruit picking in natural envi ronments in the presence of spatial variability requires full spatial motion that can be achieved with three DOF for positioning and three DOF for orienting the end effector. Previous robot pickers for citrus were of a three DOF spherical or articulated configuration, thus satisfying only the positioning criteria. Most developments also included a wrist roll, wh ich aided in the fruit picking motion. The lack of additional DOF for orientation has been cited as a primary reason for the less-thanoptimal performance of these prototypes. To realize the full benefits of a robotic harvesting arm, both in terms of production efficiency and economics, an appropriate manipulator configuration shoul d be chosen. The study presen ted here will discuss the addition of a three DOF wrist to the basi c articulated manipulator. The articulated configuration is sel ected due to its large worksp ace-to-size ratio, all-revolute construction, and compactness. Two popular configurations for three DOF robot manipulator wr ists are the pitchyaw-roll (PYR) and the roll-p itch-roll (RPR). These two wrists, combined with the articulated manipulator, will provide the necessa ry six DOF for picking fruits distributed in the tree canopy volume. Figur e 6-3 and Figure 6-4 show the arm configurations and their coordinate frame assignments. The Dena vit-Hartenberg (D-H) parameters for the

PAGE 80

64 arms are listed in Table 6-1 and Table 6-2. The modified D-H convention presented in Craig (1989) was used. The arm models were built using the robotics toolbox in Matlab (Corke, 1996). For simplicity, a cuboidal volume that encompasse s the reduced workspace shown earlier was treated as the fruit picking zone. In order to effectively analyze the manipulator's ability to pick fruits, fruit positions in the cuboid were chosen, as given in Figure 6-5 and Table 6-3. These fruit positions were verified to be within reach of the picking arm. The picking arm base was positioned 0.50 m from the tree canopy in the front and centered horizontally and vertically. A ba sic posture for the arms was established as the ready-forpicking posture, and trajectories were generate d from this pose to th e fruit picking pose. The Jacobians were calculated for each step along the trajectory and used for the analyses. As shown in Figure 6-6, the angle of appro ach of the tool axis, measured about the YL and ZL axes (on the XLZL and XLYL planes, respectively) of the local coordinate system attached to each fruit center, allo wed an effective fruit picking range of 45. The end effector approach angle fo r simulations was kept within 10 for all fruits except fruit 2. Fruit 2 was at the outer boundary of the arm, and the achievable orientation of the end effector was around 30, which was still within the specified approach angle space. Results and discussion The results obtained from the analyses us ing the proposed measures are presented here. Figure 6-7 and 6-8 show the variation of the normalized translational and rotational manipulability measures along the trajectories. The decoupled Jacobian matrix values are dependent on the pose of the robot, which c ontributes to the slight variation in the

PAGE 81

65 translational manipulability values even t hough the three base DOF are the same for both configurations. The peak values for transl ation occur when the second and third links form an angle of 90 (elbow best posture). The rotational manipulability plots for all four trajectories show that the arm with the RPR wrist maintained the manipulation ability through the trajectory. The PYR-wrist arm's ma nipulability declined as it reached the fruit. The singular values for the PYR wrist li e at the outer boundaries of its workspace, while the RPR wrist's singular values lie at the inner boundaries of its workspace. The results from rotational manipul ability suggest that the RPR wrist will perform well for fruit picking motions. Figure 6-9 and Figure 6-10 show the tran slational and rotational directional invariance of dexterity measure for the fruit picking trajectories. The translational DID measure shown is in accordance with the expected values. As the arm stretched out to reach the fruits, it neared the singular re gions. At or near singularity, the condition number of the Jacobian matrix becomes la rge, or the inverse of the condition number (DID) will be closer to zero. The initial pose configurations contributed to the variation in the translational values in the early part of the trajectory. The rota tional DID values show that the rotational ability of the RPR-wrist arm was uniform through the trajectory, as opposed to the PYR-wrist arm, which lost unifo rmity in dexterity as it moved toward the fruits. This invariance in dexter ity is an important feature fo r fruit picking, as it provides flexibility in approaching the fruit from differe nt directions in the presence of obstacles. The translational and rotati onal ellipsoids act as visual aids to study the robot dexterity along a trajectory. The ellipsoid plots for one of the fruit trajectories are presented in Figure 6-11 and Fi gure 6-12. The ellipsoid volumes are plotted at the start,

PAGE 82

66 middle, and final points of the trajectory and are scaled for better vi sualization. As seen in the figures, the translational ellipsoids ar e similar for both arms, whereas the rotational ellipsoids reveal the reduction in the el lipsoidal volume as well as the variance in dexterity for the PYR-wrist arm. The rotational ellipsoid for the RPR-wrist arm does not vary much from the start position to the fru it position, corroborating the results from the DID analysis, and shows the end effector's uni form orientation capab ility about all three axes. Thus, the desired fruit picking orie ntation can be achieved with ease. It should be noted that the six DOF arm co nfigurations presented here are not the only available solutions (and thus may not be the most optimal) for the fruit harvesting manipulator, but they are the basic feasible solutions. Although a six DOF configuration can spatially position and orient the end effector, approachin g and picking fruits hidden behind dense foliage and branches, especially inside the canopy, will require additional joint-link pairs, thereby incr easing the complexity of the arm. The proposed numerical and graphical techniques can be used to arrive at optimal solutions due to their versatility in comparing various configurations irrespec tive of the number of joint-link pairs they possess or their order. Neverthe less, it should be noted that the physical meaning of the manipulability index is not readily apparent and is an inherent issue in applying this index for the analysis of manipulato r configurations for satisfying a particular task. A more indepth study to address the issu es involved in the applica tion of these indices is beyond the scope of this research work. Conclusions One of the primary areas of research in th e development of agricultural robots is the task-specific design synthesis of a manipulat or. The manipulator design evolves from an appropriate kinematic synthesis of the joints and linkages. Optimal selection of an arm

PAGE 83

67 configuration requires evaluation of the alte rnatives with minimal time and cost. This leads to high reliance on software simulati ons. Confidence in the design can be greatly improved with well laid out performance indi ces that can be used in the evaluation process. As presented in this article, two kinematic perfor mance indices were identified as potentially good measures fo r the evaluation of robot c onfigurations against the requirements of the citrus harvesting applic ation. The normalized manipulability and the directional invariance of dext erity measures provide a good platform for the comparison of various arm configurations irrespective of their size or number of degrees of freedom. The use of these performance indices was verified through analysis of two six DOF manipulators as applied to citrus fruit harvesting. As mentioned before, additional DOF may be necessary to harvest inner canopy fruits . Also, it should be noted that even though the inconsistency of physical units of the Jacobian matr ix was circumvented through delineation of tool tip transl ation and rotation co mponents, this approach does not solve cases where both prismatic and rotational joints are present in the manipulator configuration. A scaling value to relate the non-homogeneous joint configurations has been suggested in the literature , but the effectiveness of this approach need to be tested. In the next chapter, the kinematic indices studied here are used for the evaluation and selection of a suitable manipulator configur ation for citrus harvesting. In particular, four manipulator configurations that satisfy the workspace needs of the task and have a minimum of seven DOF are chosen for eval uation. The four confi gurations are then modeled in RobotectPro due to its versatile program environment. The models are then analyzed for their dexterity capability through the available dexterity analysis toolbox in RobotectPro. The dexterity analysis follows a similar procedure as presented in the

PAGE 84

68 section on manipulability, but, relies on the SVD of the Jacobian matrix rather than finding the manipulability index. The unit depe ndency is handled through the separation of the Jacobian into translation and rotation matrices. The singular values as well as the volumes of the ellipsoids along with the gra phical output in the form of superimposed ellipsoids provided a better physical mean ing than the manipulability index for the evaluation of the various configurations. Citr us fruit picking traj ectories are generated and the dexterity analysis is carried out al ong the trajectories. T hus, the objective of selecting an optimal configura tion for citrus harvesting is re alized through the use of the dexterity performance index.

PAGE 85

69 Figure 6-1. Florida ci trus grove layout. A B Figure 6-2. Workspace volume A) Tree space (m3) and B) Harvesting space (m3). Figure 6-3. Articulated arm with PYR wrist.

PAGE 86

70 Figure 6-4. Articulated arm with RPR wrist. 1 3 1 m Y X Z 1.83 m 1.83 m 4 2 Figure 6-5. Fruit picking volume with trial fruit positions. Y L X L Z L End effector approach direction Figure 6-6. End effector approach angle space.

PAGE 87

71 Figure 6-7. Translational manipulability: A) frui t 1, B) fruit 2, C) fruit 3, and D) fruit 4. Figure 6-8. Rotational manipulabili ty: A) fruit 1, B) fruit 2, C) fruit 3, and D) fruit 4.

PAGE 88

72 Figure 6-9. Translational DID: A) fruit 1, B) fruit 2, C) fruit 3, and D) fruit 4. Figure 6-10. Rotational DID: A) fruit 1, B) fruit 2, C) fruit 3, and D) fruit 4.

PAGE 89

73 A B Figure 6-11. Translational ellipso ids along trajectory for fruit 3: A) Articulated arm with PYR wrist and B) Articulat ed arm with RPR wrist. A B Figure 6-12. Rotational ellipsoids along trajectory for fruit 3: A) Articulated arm with PYR wrist and B) Articulat ed arm with RPR wrist.

PAGE 90

74 Table 6-1. D-H parameters for arm with PYR wrist. Link I Link Length ai-1 (m) Twist Angle i-1 (deg) Link Offset di (m) Joint Angle i (deg) 1 0 0 0.2000 1 2 0 -90 0 2 3 0.7500 0 0 3 4 0.7500 0 0 4 5 0.2032 90 0 5 6 0 -90 0.2032 6 Table 6-2. D-H parameters for arm with RPR wrist. Link I Link Length ai-1 (m) Twist Angle i-1 (deg) Link Offset di (m) Joint Angle i (deg) 1 0 0 0.2000 1 2 0 -90 0 2 3 0.7500 0 0 3 4 0 -90 0.9532 4 5 0 90 0 5 6 0 -90 0.2032 6 Table 6-3. Fruit positions from robot base. Fruit X (m) Y (m) Z (m) 1 -0.915 1.000 0 2 -0.915 1.250 0.915 3 0.915 0.500 0.915 4 0.915 1.250 -0.915

PAGE 91

75 CHAPTER 7 MANIPULATOR CONFIGURATION SELE CTION FOR CITRUS HARVESTING Introduction Past developmental efforts on robot mani pulators for citrus harvesting and the experimental results from the prototypes that resulted from these efforts have indicated the need for an optimally configured r obot manipulator for the citrus harvesting application. Specific studies by Harrell et al. (1988), Juste and Sev ila (1991), Hannan and Burks (2005), and Muscato et al . (2005) are cited here. Also in the past, few agricultural robot developments have utilized appropria te performance measur es in configuring robotic manipulators for specific tasks (Cer es et al. (1998), Kondo (1998), and Sakai et al. (2002)). Of these, the work by Ceres et al. (1998) is for a citrus harvesting manipulator named Agribot where an extension of Yoshik awa’s (1985) local manipulability index and a statistical distributi on of fruits on citrus trees were utilized to design an articulated manipulator with four DOF. The manipulat or was designed to operate with human guidance for fruit detection and an end effector with a suction cup a nd a V-shaped cutter for picking the fruits. The dimensional stru cture of the arm was designed to cover one half of the tree surface wit hout an additional harvesting arm positioner (HAP). Although an arm prototype for Agribot was built, no publ ished performance resu lts are available. This chapter discusses the selection of an optimally configured robotic manipulator following the design methodology presented in Figure 7-1. The modeling and simulation tools presented in chapter 5 and the dexterity performance index using Jacobian singular values discussed in chapter 6 were used for this purpose.

PAGE 92

76 Robotic Citrus Harvesting Task Description The concept for a robotic harvesting system de vised in this research work utilizes a HAP to position the citrus harvesting manipul ator along the tree ca nopy. As discussed in chapter 6, this allows for division of the w hole tree surface into multiple harvesting zones on each side of the tree. The vehicle carrying the HAP and the robotic citrus harvester is assumed to move along the cente rline of the rows. Once the ve hicle is moved in place for harvesting fruits from a particular tree, the HAP will position the platform carrying the robotic manipulator at the center of any of the zones. This position will be held with minimal adjustments until all of the fruits in that zone are picked and the HAP moves the platform to the next zone. This operation will be repeated until all of the zones are covered for a particular tree and the vehicl e is moved to the next tree. The fruit distribution data reported by Schertz and Brown (1966), and Juste et al. (1988) were utilized in this research work to obtai n a reduced workspace for the robotic citrus harvester. A sample of the fruit distribution for a full grown citrus tree is presented in Figure 7-2. As can be seen from Figure 7-2, the bottom (3 to 4) m and the section 1 m from the periphery of the tree account for about 90 % of the fruits present in a tree. The reduced workspace for the robotic citrus harvester that actually picks the fruits zone-by-zone can be modeled as a cuboidal volume of size, 1.83 m (width) x 1.83 m (height) x 1 m (depth) as presented in chapter 6. Robot Configuration Selection Complete definition of the location of a fruit in 3D space requires three DOF for position and three DOF for orientation. As shown in chapter 6, the basic six DOF configuration with a roll-pitch-roll wrist will suffice the needs in an obstacle free

PAGE 93

77 environment. But the presence of obstacles in the workspace, fruit clustering, and potential loss of DOF while working insi de the canopy suggests the introduction of redundancy in the manipulator configuration. The question arising from this is, “How many additional DOF will be optimal?” Obviously, as the number of DOF increases, so do the complexity and the cost of the manipul ator. The approach taken to answer this question is to consider configurations with at least one additional DOF (i.e., seven DOF systems) and evaluate their performances fo r the given fruit picking task. Also, a seven DOF configuration will closely emulate the human arm structure. Kinematic Structures for Evaluation The kinematic structures of the seven DOF configurations that were considered for evaluation are shown in Figure 7-3. The revolute-revolute-prismatic (rrp) spherical as well as the all-revolute (rrr) articulated configurations we re considered for the basic structure used primarily for positioning. The tw o candidates considered for the four distal joints following the basic structure were ro ll-pitch-pitch-pitch (RPPP) and dual roll-pitch (RPRP). The RPPP was selected based on its planar redundant space av ailability and the RPRP was devised by adding an additional DOF to the previously tested RPR wrist configuration. The combination of each basi c structure with the two distal joints structures resulted in the four c onfigurations chosen for evaluation. Workspace Evaluation The loci of the origin of the end-effector coordinate system are plotted in the plan and elevation views as shown in Figure 74 and Figure 7-5, respect ively, and represent the manipulator reachable workspaces or outer boundaries. It should be noted that all of these manipulator types will have interior vo ids in their work volume due to the presence of singular configurations. All the manipulator types have the same reach, but Type 3 and

PAGE 94

78 Type 4 manipulators have a broader workspace ar ea as visible in the side elevation plots due to their all-revolute construction. Als o, normalization of the dexterity indices to address scaling issues is not needed since th e total reach of all the manipulators is the same. RobotectPro Modeling The models for all four kinematic structures presented in the previous section were constructed in RobotectPro usi ng the joint-beam modeling form at as described in chapter 5. The transformation matrices used for the defi nition of joint-link pairs in the joint-beam modeling format were based on the mechanis m parameters for the four manipulator configurations. The coordinate frame attach ments and the mechanism parameters for the four manipulator configurations in modified D-H notation ar e provided in appendix B. As the interaction of a robotic manipulator with the environment is primarily through an end effector, a tool object was crea ted and attached to all of th e models. Figure 7-6 shows the four models created in RobotectPro for evaluation. Virtual Environment for Trajectory Simulations For initial analysis, a virtual environmen tal model is built with a citrus tree representation as shown in Figure 7-7. The mani pulator base is positi oned at the center of the YZ plane and 0.50 meters away from the canopy surface along the X axis. A grid pattern is laid over the ca nopy surface (will be termed the harvesting surface) on the harvesting side of the tree to mark the fruit locations. The presence of a fruit in every hole of the grid is assumed for simulations. Also, for simplicity, the tree is considered to be symmetrical both horizontally and vertically thus reducing the harvesting surface for simulations to one quarter of the total surface.

PAGE 95

79 Trajectory Generation With the grid pattern as reference, harv esting trajectories along the row and column of the harvesting surface were generated by specifying via-points. A user-specified location was used for fruit deposition afte r harvesting. Each tr ajectory has three movement segments, 1) from ready pose to fr uit location, 2) from harvesting pose to fruit deposition location (FDL), and 3) from FDL to ready pose. Figure 7-8 shows the fruit locations along the row and column and the FDL used for simulations. Sample Cartesian tool positions along the trajectory via fruit lo cation 1 for the four r obot configurations are presented in Figure 7-9. As the motive for th is study was kinematic analysis, either the linear interpolation or the quintic polynomial method c ould be used for trajectory generation. The quintic polynomia l method was used as it gave more realistic motion simulation. Also, joint space trajectories were used to avoid any errors in using the default IK solver and to expedite the trajectory generation process. Dexterity Performance Evaluation and Comparison The manipulator dexterity measures attempt to qualify the mobility of the robot end effector in both the linear and the angular directions. The dexterity performance indices discussed in chapter 6 are, translational manipulability, rotationa l manipulability, and directional invariance of de xterity. It was shown that the manipulability ellipsoids representing the singular values along their major axes act as good visual aids to study the manipulator performance at specific robot configurations a nd at end points of interest. Also, the translational and ro tational singular values along a trajectory as well as the ellipsoid volumes can serve as primary quant itative measures for manipulator dexterity. The expressions for manipulability index and directional invariance of dexterity require the computation and collection of ma nipulator Jacobian at multiple points of

PAGE 96

80 interest. In chapter 6, this was accomp lished through construction of the robot configurations utilizi ng Matlab Robotics Toolbox and deve loping Matlab routines for the calculation and collectio n of Jacobian matrices. The Jac obian matrices were used to calculate the robot manipulability, to determin e singular values, to plot the manipulability ellipsoids, and to compute the condition numbers . From this effort, it was apparent that the model construction, collection and processing of Jacobians, plotting of manipulability ellipsoids during trajectory simulations as well as effectively comparing multiple configurations are computati onally expensive and tedious. RobotectPro, discussed in chapter 5, is an alternative manipulator synthesis tool having the kinematic design and analysis capabilities needed to accomplish the task. In particular, the dexterity an alysis in RobotectPro uses translational and rotational Jacobians as a method to circumvent the problem of mixed units. Also, the singular values determination for all manipulator poses along generated trajec tories is performed during trajectory generation allowing smooth display of the manipulability ellipsoids during simulations. The computed singular values and ellipsoid volumes along trajectories can be saved for further analysis although the Jacobian matrix is presented only for the current pose of the manipulator. Th erefore, the calculation of manipulability indices and condition numbers for multiple pos es is still a problem. Nevertheless, characterization of the manipulator dexter ity through the singular values, dexterity ellipsoids, and ellipsoid volumes should su ffice the needs of the harvesting manipulator configuration selection task. Results and Discussion The performance of the manipulator conf igurations along the trajectories were studied using the Jacobian/Dexte rity analysis tool in Robot ectPro. The translational and

PAGE 97

81 rotational dexterity ellipsoids along the fruit 1 harv esting trajectory for the four configurations are shown in Figure 7-10 and Figure 7-11, respectively. The ellipsoids are uniformly scaled for better visualization. The translational dexterity el lipsoids in Figure 7-10 reve al that the ellipsoid volume improved as the manipulators extended their end effectors away from them. Also, the configurations with a prisma tic member, namely Type 1 and Type 2, fared better than their all-revolute counterparts, Type 3 and Type 4. Type 1 and Type 2 manipulators saw an increase in the translational ellipsoid volum e as well as preserved their mobility in all three linear directions. The ro tational ellipsoid plots presen ted in Figure 7-11 show that the manipulators with dual roll pitch as thei r distal joint confi guration performed well along the fruit picking trajectory. Thus, Type 2 and Type 4 manipulator configurations preserved their mobility in al l three angular directions. Similar observations were made for trajectories via other fruit locations. Further, the ellipsoid volume s and singular values for all fruit pose trajectories were evaluated and the results were analyzed to c onclusively determine the configuration with best dexterity performance among the sele ctions. The translational and rotational ellipsoid volumes along the harv esting trajectories for all hor izontal and vertical fruit locations are plotted in Figur e 7-12 and Figure 7-13. Sample translational and rotational singular values along linear and angular direc tions for harvesting trajectories via fruit location 1 are plotted in Figure 7-14 and Figur e 7-15. The dexterity ellipsoid volumes and the singular values provide a quantitative and qualitative m easure for comparison of the configurations. Large volumes and stable cu rves represent optimal configurations. The translational ellipsoid volumes in Figure 7-12 in dicated that all of the configurations had

PAGE 98

82 better performance away from the manipulator bodies with Type 1 and Type 2 configurations out performing Type 3 and T ype 4 configurations. Between Type 1 and Type 2 configurations, Type 1 had better p eak volumes and stability of curves for trajectories via all fruit locations. This could be attributed to the arrangement of the distal joints with three pivoting links in Type 1 as opposed to the dual ro ll pitch configuration present in Type 2. The translational singular values in Figure 7-14 s how that the ease of movement along X and Y directions for all manipulator configurations was about the same while along the Z direction, the movement for Type 3 and Type 4 were constrained contributing to their poor dexterity performance. The rotational ellipsoid volumes in Figure 7-13 revealed that Type 2 and Type 4 had better performance than Type 1 and T ype 3 configurations. Between Type 2 and Type 4 configurations, Type 4 had better p eak volumes for traject ories via all fruit locations due to the presence of all rotating joints in its configuration. Type 1, Type 2, and Type 4 configurations e xhibited uniformity in dexterity values along the trajectory. The rotational singular values in Figure 7-15 show that Type 3 configuration displayed good performance for rotation about the X axis , but performance about the other axes were largely unstable. Type 2 and Type 4 pe rformed equally well about the Y and Z axes while Type 1 gave good rotational dexterity about the X and Z axes. Conclusions This chapter presented the manipulator configuration sele ction for citrus harvesting. The design methodology adapted for this work utilized the functional and workspace requirements of the harvesting task for the selection of potential manipulator configurations. The knowledge developed on the use of dexterity performance indices in the previous chapter was used to evaluate and compare the configurations’ performance

PAGE 99

83 along pre-defined harvesting motions. The mode ling tool RobotectPro was used for the model construction, evaluation, and comparison. The results were gathered and analyzed to arrive at the optimal configuration. From evaluation and comparison of dexterity performance for the selected configurations, the manipulator configur ation with balanced dexterity in translation and rotation is found to be Type 2 and is recommended as a potential configuration for the fruit harvesti ng task. The other observations made in this study are, for high translational dexterity, the best performer is Type 1 while for high rotational dexterity the best pe rformer is Type 4. A dditionally, the perfor mance of the last four DOF or the distal joints of the configurations were analyzed and it was concluded that the dual roll-pitch configuration wa s best suited for providing the necessary orientational capability at the end point of the manipulator.

PAGE 100

84 Figure 7-1. Design methodology for r obotic manipulator synthesis.

PAGE 101

85 Figure 7-2. Citrus fruit di stribution: A) Front and B) Top cross section. A B C D Figure 7-3. Manipulator conf igurations A) Type 1: rrp-RPPP, B) Type 2: rrp-RPRP, C) Type 3: rrr-RPPP, and D) Type 4: rrr-RPRP.

PAGE 102

86 Figure 7-4. Workspace plan view. A) Type 1, B) Type 2, C) Type 3, and D) Type 4. Figure 7-5. Workspace side elevation. A) Type 1, B) Type 2, C) Type 3, and D) Type 4.

PAGE 103

87 A B C D Figure 7-6. RobotectPro models A) Type 1, B) Type2, C) Type 3, and D) Type 4. Figure 7-7. RobotectPr o virtual environmental model.

PAGE 104

88 Figure 7-8. Row and column fruit locations a nd the FDL used for trajectory simulations. Figure 7-9. End effector Cartesia n coordinates along trajectory vi a fruit location 1. A) Type 1, B) Type 2, C) Type 3, and D) Type 4.

PAGE 105

89 Type 1 Type 2 Type 3 Type 4 A B C Figure 7-10. Translational dext erity ellipsoids along traject ory via fruit location 1. A) Start point, B) Fruit location 1, and C) FDL.

PAGE 106

90 Type 1 Type 2 Type 3 Type 4 A B C Figure 7-11. Rotational dexterity ellipsoids al ong trajectory via fruit location 1. A) Start position, B) Fruit location 1, and C) FDL.

PAGE 107

91 Figure 7-12. Translational de xterity ellipsoid volumes al ong trajectories via fruit locations. Horizontal fruit locations: A) 1, B) 2, C) 3, D) 4. Vertical fruit locations: E) 2, F) 3, G) 4.

PAGE 108

92 Figure 7-13. Rotational dexterity ellipsoid vol umes along trajectories via fruit locations. Horizontal fruit locations: A) 1, B) 2, C) 3, D) 4. Vertical fr uit locations: E) 2, F) 3, G) 4.

PAGE 109

93 Figure 7-14. Translational singular values al ong fruit location 1. A) X, B) Y, C) Z. Figure 7-15. Rotational singular values along fruit location 1. A) RX, B) RY, C) RZ.

PAGE 110

94 CHAPTER 8 HYDRAULIC MANIPULATOR PROTOTYPE DEVELOPMENT Introduction As the domain of robotic automation is ever widened, tasks that require human sensory perception, intelligen ce and dexterity are increasi ngly being considered for robots. As fruit harvesting requires the use of arm(s) and hand(s) for manipulation, the design of a robotic manipulator for this task pl ays a crucial role in realizing the objective. The design includes the functional and structural description of the joints and links of the arm. The optimized kinematical structure deri ved from the functional description is used for the structural design of the robot manipulator. The mode ling and analysis tool used for this purpose is SolidWorks (Concord, MA). In chapter 7, a robot manipulator confi guration for citrus fruit harvesting was selected through evaluation of workspace and kinematic dexterity. This chapter presents the detailed mechanical design and developm ent of a four DOF manipulator prototype comprising the distal joint-link pairs (J0-J1-J2-J3) of the sele cted configuration as shown in Figure 8-1. The reason for the reduced DOF manipulator development is to reduce time and cost for prototype development. Als o, the base three DOF structure is used for positioning and can be included in the future with relative ease. This chapter is organized as follows: Basic requirements for the manipulator and the derived joint specifications. Selection of hydraulic rotary ac tuators, and joint-link layout. Mechanical design and assembly of the manipulator prototype. Hydraulic actuation system design.

PAGE 111

95 Manipulator Requirements and Joint Specifications Manipulator Requirements The basic specifications for the citrus harvesting robot manipulator are payload, workspace, end effector translational spee d, accuracy, size and weight, and cost for prototype development. Of these, the worksp ace criterion was determined from the task requirements as presented in chapter 7. The ma nipulator reach was specified to be 1.74 m including the end effector to cover one quart er of the workspace. The other parameter specifications are explained as follows. Payload The payload for citrus harvesting applica tion comprises of end effector, camera, force/torque (F/T) sensor, adapter plate(s), a nd fruit. An end effector prototype developed for fruit harvesting experiments by the Agri cultural Robotics and Mechatronics group (ARMg) at the University of Flor ida is pictured in Figure 8-2. This end effector and associated com ponents weighed ~2.50 kg. The fruit masses obtained as part of a study on physical properties of citr us in 2004 reported by Flood et al. (2006a) indicated that the largest fruit weighed 0.241 kg w ith the average through the harvesting season being 0.195 kg (citrus variet y: Valencia orange). The combined payload using the largest fruit weight wa s 2.741 kg. To accommodate increases in the end effector mass due to future improvements, the maximum rated payload (i.e., maximum mass handled in any configura tion) was specified as 4.536 kg. In addition to this, the force required fo r fruit removal from the stem should be included in the payload specification. Fru it removal studies conducted at a commercial grove site in Florida, with Valencia ora nges, in 2005 were used as a reference for expected end effector forces. Similar tests were conducted in 2006 at the same grove site

PAGE 112

96 and the results on fruit detachment forces (FDF) were reported by Flood et al. (2006b). In these tests, the fruits from different lo cations on the trees were removed by pulling linearly along the axis of the stem the fruit was attached to as this would generate the maximum force. The tests were conducted at various fruit ripening stages (March through June). The equipment used for recording forces in the linear pull test is a Dillon Quantrol (Fairmont, MN) 200 N force gauge with a strap a ttached to the end to hold the fruit while pulling. The maximum FDF recorded in all m onths was 125 N with the averages ranging from 64 N to 82 N throughout the season (The values are rounded to the next higher integer for convenience). Also, additional fruit removal tests reported by Flood et al. (2006b) shows that the FDF reduces as the angl e between the fruit axis and the stem axis increases. The maximum reduction occurs wh en the fruit and stem axes are almost perpendicular yielding an average FDF of 35 N and a maximum FDF of 85 N. The values are the resultant of forces recorded in the X, Y, and Z directions using an ATI Industrial Automation (Apex, NC) Mini45 series six ax is force/torque sensor mounted on a Robotics Research (Cincinnati, Ohio) m odel 1207 seven DOF manipulator. Another observation was that for a ny angular pull, the maximum FDF was about 100 N. Speed The picking cycle time (time taken to pick one fruit and deposit in the collection bin) will vary for each fruit due to the vari ability of fruit positions in the tree canopy. For harvesting speeds comparable to manual pickin g, an average cycle time of 2 seconds per fruit or less is needed. In r obotic harvesting, the cycle time includes fruit detection time, time for manipulator movement to and from fruit position, and end effector actuation time for picking and releasing fruit at the co llection bin. With multiple arms harvesting at the same time, this cycle time requireme nt can be satisfied. For the prototype

PAGE 113

97 development, the Cartesian speeds in all dire ctions were specified to be approximately 0.87 m/s (half length of manipul ator reach from base). Accuracy As the robot manipulator is anticipate d to be positioned and oriented through continuous feedback from vision, proximity, a nd other sensors mounted in or near the end effector, the specification of absolute end effector accuracy can be relaxed for the fruit harvesting application as opposed to the industrial applications . Recommended static and dynamic accuracy values for such an application are 0.10 cm and 1.00 cm, respectively (Tillet, 1993). As there is no easy way to correctly determine the accuracy needs for the citrus harvesti ng task without including the se nsor parameters and other disturbances such as fruit movement due to wind, the above mentioned accuracy values can be accepted initially and the necessary modifications shall be made once the entire robotic harvester system is built. Size and weight The other main criterion for the developmen t of a manipulator for an application with obstacles such as tree lim bs and twigs is slenderness. To enter the tree canopy, jointlink structures with an outer diameter of 7.62 cm to 10.16 cm is considered optimal. As will be seen in the section on mechanical design and assembly, the availability of components and the need to design for ease of assembly led to a compromise in the sizing of the joint-link structures for this prot otype arm. Additionally , the weight of the manipulator is an important parameter as this would influence the individual joint design as well as the power requirement of the prototyp e. This is especially true for direct drive joint actuation schemes as the in-board joints typically s upport the out-boa rd joint-link pairs. The design criteria for the joint-link pairs in terms of their weight could be

PAGE 114

98 subjectively stated as: As light as possible without compromising on the payload and the end effector force exertion requirements. Objectively, the maximum weight for the four DOF manipulator was target ed to be less than 14 kg. Cost As the robot manipulator is to be used in the agricultural indu stry having low profit margins, the commercialization of a prototype is feasible only with an attractive price tag. With this in mind, the targeted expens e for the four DOF manipulator, excluding personnel labor, was set at $5000. Joint Specifications Once the basic manipulator requirements were obtained, the next step in the design process was to translate these requirements in to individual joint specifications. The jointbeam model created in RobotectPro for the T ype 2 robot manipulator and presented in chapter 7 was used for this purpose. The i nput parameters representing the dynamics of the manipulator used in the RobotectPro m odel are provided in Ta ble 8-1. Conservative estimates for the joint masses were used in the joint-beam model. The force/torque analysis dialog in Robot ectPro was used to perform the inverse dynamics. Inverse dynamics computations led to the determination of joint torques that were needed to generate the motion specifi ed by the joint accelerations, velocities, and positions along with the expected end effector forces. The trajectory generation dialog in RobotectPro was used for this purpose and simu lated fruit picking tr ajectories using the quintic polynomial method were generated. Th e FDF’s on the end effector were applied intermittently along the trajectory. The vector s representing the forces along all three axes are shown in Figure 8-3. A pure pull for ce of 80 N along the Z direction was applied intermittently at the end effector during simu lations and a constant payload of 4.536 kg at

PAGE 115

99 the end point was used to simulate the presen ce of an end effector with a fruit. It was found that the applicat ion of the 80 N pull force at the end point generated high reaction torque values at the distal joints when the lower joints were locked in position and were not aiding in the fruit picking movement. Due to this, the joint torque values determined for trajectories without end point force application as presen ted in Table 8-2 were used for the selection of actuators. Static tor que values calculated using maximum possible end effector loading conditions verified that the calculati ons in RobotectPro had a design factor of safety (FOS) of ~2. The end poi nt velocities varied depending on the fruit positions, thereby varying the joint speeds for the different trajectories. The maximum values of the averages resulting from the va rious trajectory simula tions are provided in Table 8-2 as well. Actuators Selection and Joint-Link Layout In this section, the selection of actuators for the four di stal joints of the Type 2 manipulator for citrus harves ting is presented. Following this , the joint-link layout for the dual roll-pitch joints is explaine d and the placement of actuators in the joints is discussed. Actuators Selection The selection of actuators for a robot mani pulator is a highly complex task often involving contradictory requirements. An overview of the selection process can be found in (Andeen, 1988). Some of the basic characteri stics that influence the actuator selection decision are speed/torque curve, inertia, efficiency, braking, shap e, size, weight, cost, etc. Nevertheless, the first and foremost decision is the actuator type, i. e., electric, hydraulic, or pneumatic. Of course, a combination of th ese could be used within a system, but, in general, all of the joint actuator types are ke pt the same for obvious reasons. Of the three actuator types, pneumatic actuators are mo re suited for linear motions. Also, they

PAGE 116

100 typically have low torque-toweight and horsepower-to-weight ratios as compared to the electric and hydraulic actuators. The comp ressibility of air co ntributes to joint compliance and slow response making them unsu itable for servo contro l applications as in citrus harvesting. The choice was thus na rrowed to electric or hydraulic actuators. The two types of actuation systems cons idered after an assessment of the requirements were: Light weight, direct current (dc) brushle ss and servo electric motors with compact harmonic drive speed reducers. Low Speed High Torque (LSHT) rotary hydraulic actuators. The advantages of the dc motor with ha rmonic drive solution are less complicated joint design and sensor integration capa bility, low overhead cost for supporting components, no fluid leaks, possibility of good position and torque control, less noise, and low maintenance. The advantages of the hydraulic actuation system are higher actuator output power-to-weight and torque-toweight ratios, robustness, and elimination of gear reducers. The electrical actuation syst ems considered included dc brushless motors with and without integrated elec tronics offered by Animatics (Santa Clara, CA), Dynetic Systems (Elk River, MN), Maxon Motors (F all River, MA), Moog Components Group (Blacksburg, VA), and PennEngineering Motio n Technology (Harleysville, PA). Suitable harmonic drive gear reducers available fr om HD Systems (Peabody, MA) were also included in the evaluation. Analys is of the electri cal actuation systems created from the commercially available components that satis fied the requirements did not meet the constraints of size or cost, or both.

PAGE 117

101 Also, it is found that LSHT hydraulic rotary actuators satisfying th e spatial, weight, and cost constraints are not commonly availabl e. The different types of rotary hydraulic actuators are gear, vane, and piston and their working princi ples can be found in Cundiff (2002). Of these, the vane type actuators ar e the most suitable from space, weight, and motion range perspective. The schematics of various vane t ype actuators are shown in Figure 8-4. Single vane actuators are cap able of 280 of rotation wh ile double vane actuators can have a rotation range between 100 and 160 . Both types are capab le of bi-directional movement. Since continuous rota tion is not specified for any of the joints, the limited rotational angle of the single vane actuators will suffice the citrus harvesting manipulator joint ranges. The moveable spring loaded vane rotates as any of the chambers are filled with fluid and the direction of rotation is determined by fluid flow into either of the chambers. Choosing the hydraulic vane actuators w ould eliminate the need for a harmonic reducer which adds significant cost to the sy stem. Also, it was observe d that the roll and pitch joints in each roll-pitch module have si milar torque demands. Thus, the selection of a hydraulic rotary actuator for a roll joint can be applied to the corre sponding pitch joint. The required torque and speed values from the joint specifications were used to match the actuator performance. The torque capacity of a hydraulic vane actuator is determined by the vane area and the applied fl uid pressure while the rotational speed is specified by the actuator displacement and th e flow rate of the hydraulic system. After extensive search, the actuators offered by Micromatic (Berne, IN) were chosen due to

PAGE 118

102 their performance and small form factor. The basic details of these actuators are provided in Table 8-3. As can be seen from the torque ratings, it is apparent that the MPJ-22 actuator model is oversized for joints J0 and J1 requirement. The choice was made to avoid additional gear reduction with the use of the smaller MPJ-11 model for these joints. Moreover, the price difference between MP J-11 and MPJ-22 models was minimal as compared to the addition of any gear reduction units. Joint-Link Layout The next step in the design process was to design the layout of the joints and links of the manipulator. Since all of the joints we re designed to be direct drives, the actuators driving the current link could be housed in the previous link to save space and maintain the small form factor. This eliminates clear delineation between join ts and links as in some of the traditional designs. The various op tions considered for the joint-link layout are shown in Figure 8-5. The advantages of similar layouts for seven DOF manipulator geometries were discussed by Rusconi et al. (2004). For the citrus harvesting app lication, the robot manipulator has to move with ease inside the tree canopy to access the fruits. So, it is desirable to have limited or nil joint offsets. Therefore, the type E geometry in Figure 8-5 was chosen. Due to this choice, the joint ranges for the pitch joints (J1 and J3) we re altered to be 180 from 270. Also, the rotation range of the actuators dictated the range for the roll joints to be 270 as opposed to 360. Though these reductions in joint ra nges might have a negative effect on the dexterity of the manipulator configuration in general, minimal effect on dexterity at harvesting poses was expected.

PAGE 119

103 Mechanical Design and Assembly of Manipulator The mechanical design of the manipulato r involved material selection for the manipulator structure, determ ination of cross-sections fo r the geometry of the links, optimal location of actuators, preservation of the joint-link lengths obtained from the kinematic design, and selection and integrat ion of additional mechanical components such as bearings, shafts, etc. The subject of mechanical design of robot manipulators is treated in-depth by Rivin (1987). The primary objective for the mechanical design of the citrus harvesting manipulator wa s to achieve high stiffness in a small and light structure. This would be highly beneficial for the system inertia, damping, and natural frequencies. The fundamental methods to achieve this object ive are a careful selection of the material and the cross-sectional shape. The material choices for a light weight harvesting manipulator are rather limited. The materials considered were aluminum and carbon composites. Due to its ready availability and reduced cost, aluminum wa s the material of choice and possessed the desirable property of high strength-to-we ight ratio. A common multipurpose aluminum alloy is Al 6061 with good machinability and corrosion resistance qualities and was used for the manipulator prototype construction. Hollow cross-sections for the links were selected to house the actuators. The basic choices were either round or square cross-sections. Comparis on of the two cross-sections for stiffness, weight, and internal cross-sec tional area led to the selection of the hollow square cross-section. The crosssection dimensions for each roll-pitch pair is the same as the actuators used to drive the respective joints are the same. The details on the two jointlink cross-sections are provide d in Figure 8-6. As ease of assembly was sought for the

PAGE 120

104 construction of the joint-link pairs, thin wa lled aluminum plates were held together by fasteners to form the tubular structur e instead of extruded aluminum tubes. As the two roll-pitch joint pairs share the same features except for the size of their geometry, the construction details for a single roll and a single pitc h joint is discussed here. The various design approaches for the ro ll and pitch type join ts can be found in works by Crowder (1988), Goldenberg et al. (1996), Eismann et al. (1996), and Goldenberg et al. (2000). Ther e are two basic constructional approaches for a roll type joint used in robot manipulators. Both the a pproaches locate the act uators inline with the joint-link axis. The first approach is to hold the joint actuator in place by attaching to a stationary skeleton that is a ttached to the base or the pr evious link. The actuator then transmits the rotational motion through an outer rotating slee ve that is supported by two anti-friction bearings at its ends. The second approach is to locate the actuator inside a stationary joint-link structur e and transmit the rotational mo vement through the actuator shaft to the next joint-link structure. Th e first approach, though ideal for handling overhanging loads, is a complex constructi on requiring careful alignment of bearings. The major challenge in the second approach is the handling of overhanging loads. Since the rotary hydraulic actuators used for the prototype had journal bearings that cannot accommodate any thrust or moment loads, it wa s necessary to find suitable bearing(s) for this purpose. The basic method to address this was to use two ball bearings separated by a distance with their axes collinear. Due to th e short actuator output shaft length and the need to preserve the short link lengths, a single double row angular contact ball bearing of a generic model offered by Bearings and Dr ives (Gainesville, FL) was chosen instead by matching the expected loads to the manuf acturer specifications. The subsequent joint-

PAGE 121

105 link structure was attached to a roll collar that is directly coupled to the actuator shaft through a keyway cut on the inner diameter of the collar. The inner race of the angular contact bearing was slip fit ont o the outer surface of the roll collar and the outer race of the bearing was held stationary within the bearing housing by a flange plate. The actuator was attached on the opposite side of the be aring housing. The broken down view of the roll joint assembly without the cove r plates is show in Figure 8-7. There are two basic approaches for the p itch joint design as well. Since the pitch joint axis is perpendicular to the roll joint axis, either the hydraulic actuator can be mounted with its axis perpendicular to the roll joint axis and su spended on a set of bearings or the actuator can be located with its axis inline with the roll joint and the pitch joint motion transmitted through a right angle gear arrangement. Again the simpler and less expensive joint design was chosen that includ ed a pair of miter gears (bevel pair with a ratio of 1:1) from Boston Gear (Quincy, MA ). Also, this arrangement aids easier hose attachment to the actuator. Th e driving gear was mounted di rectly on the output shaft of the hydraulic actuator while th e driven pinion was assembled on a shaft whose axis is perpendicular to the driving gear and was su spended on a pair of single row deep groove ball bearings that were attached on a fork type machined part. The fork part also serves as the motor attachment and carries another deep groove ball bearing th at the actuator shaft was passed through. The hub-ends of the mite r pair rest on the inner race of the corresponding bearings that take the thrust loads generated du e to the pushing force of the gear teeth. Steel shims and delrin spacers were used as needed to provide a tight fit. Figure 8-8 shows an assembly of the pitch jo int without the cover plates for the links.

PAGE 122

106 It should be noted that all of the bearing housings and fork ends were designed for manufacturability that in some instances re quired them to be broken down into smaller pieces. Also the weight carrying elements such as the shafts and roll collars were designed or selected using a ppropriate mechanical design methods and their strength verified by static analysis using the FE A toolbox in SolidWorks. The manipulator assembly with joint actuator arrangements is shown in Figure 8-9. The actual manipulator prototype assembly is shown in Figure 8-10. Hydraulic Actuation System Design This section is divided into two main subsections. In the firs t section, a hydraulic circuit for valve controlled motor motion (VCM M) is proposed and in the second section, the selection of the hydraulic components fo r the implementation of the circuit is presented. Rotary Actuator Control Circuit The two basic control elements for a ro tary hydraulic actua tor are a variable displacement pump supplying fl uid to individual actuators and a servo or proportional solenoid valve controlling the flow from a hydr aulic power supply to the actuators. Using a variable pump will provide good load matching but is usually difficult to implement due to large contained volumes that results from close coupling the pump to the actuator. The valve controlled system is easy to implem ent as the valves can be located closer to the power supply and the fluid can be delivered via pipes or hoses to the actuators. The hydraulic power supply in a valve controlled system can be of two types, a constant delivery pump with a relief valv e to regulate pressure or a va riable delivery pump with a stroke control to regulate pressu re. The latter is more efficient as the flow is matched to the requirement and energy wasted due to flui d dumping through relief valves is avoided.

PAGE 123

107 More details on the pros and cons of the va rious configurations fo r actuator control can be found in (Merritt, 1967). Due to fast response of the valve controlled system to valve and load inputs, small contained volumes, and the ability to feed several valve controlled systems from a single hydraulic power supply, the valve controlled system was chosen for the citrus harvesting manipulator. As a constant delivery pump matching the flow and pressure requirements of the hydraulic system was readily available, this type of valve controlled system was chosen. Also, the performances of the spool valves controlled by proportional solenoids have been improved greatly over the years negating the use of costly servo valves. Therefore, appropriate propor tional directional control valves were chosen for the VCMM system. An initial hydraulic test circ uit for the VCMM system was developed as shown in Figure 8-11. A flow divider with fi xed equal flow divisi on was included in the circuit to reduce the flow to the proportiona l directional control va lves from the fixed displacement pump. It was anticipated that the flow dividers would aid in making available flow to the actuators at all times i rrespective of the load variations between the various joints. Also, it was anticipated that the reduction of flow to the individual proportional directional control valves would help in the e ffective use of their operating range at low flow rates. This test circuit fail ed to deliver the expected results due to the following reasons: The flow dividers were not stable when there is significant difference in load on the two sides and th ere was no metering at the prop ortional valves as there was no bypass path for the flow to go through after the flow divider. Although the performance of the circuit would have im proved with the inclusion of a bypass flow control valve between the flow divider and the proportional di rectional control valve, it

PAGE 124

108 was not attempted primarily due to the elabor ate effort, time, and cost associated with making the changes to the circuit. Instea d, a simpler solution was sought with the removal of the flow divider from the circu it. The modified hydrauli c circuit w ithout the flow dividers is shown in Figure 8-12. A lthough this was a less th an ideal circuit, it sufficed the need for a basic hydraulic circui t for the experimental setup of the robot manipulator prototype. The details on the hydr aulic power supply, valves, and additional components are provided in the next section. Hydraulic Components for VCMM As can be seen from the circuit, all th e actuators were power ed by a single power supply. The power supply was retrofitted with a relief valve on the pump side to regulate system pressure that can be monitored by a pressure gauge. All the fluid connections in the circuit were achieved through hoses and e nd fittings to match the individual ports of the hydraulic elements. The fluid flow from the pump is transfe rred via a distribution manifold to the VCMM circuit that has four parallel circuits for the four actuators. Each actuator was controlled by an individual dua l solenoid controlled proportional directional valve. The valves are closed-centered thr ee position four way cartridge type valves mounted on aluminum ported bodies. The return path for the fluids from the actuators is combined at the return manifold and then routed back to the reservoir through a 10 micron filter to clear away any impurities and trapped air. The reservoir has an in-built heat exchanger that cools the oil temperature that can be monitored by a temperature gauge attached on the power supply unit. A ny oil leakage from the system can be collected in a trough placed underneath the w hole system to be disposed later. The primary selection criteria for the valves were the flow rate and pressure requirement of the VCMM circuit. As the expected actuator operation typically required low flow rates

PAGE 125

109 (< 3 L/min), the range of valves available for selection was considerably small. All of the proportional valves and the relief valve were obtained from Hydraforce (Lincolnshire, IL). The manifolds were obtained from McMa ster-Carr (Atlanta, GA) and the hoses and fittings were resourced from Bearings and Drives (Gainesville, FL). Although a thorough analysis of the entire system would have helped to better select the components and desi gn the circuit, this was avoi ded primarily due to time constraints. Moreover, a simple circuit wa s sought since the pr imary objective was to conduct experiments on the kinematic characteri stics of the manipulator configuration. Nevertheless, preliminary calculations were performed on the pressure drops in the VCMM circuit to verify that the system pressu re was sufficient to run all four actuators. As the hose lengths were short, the pressure drops through the hoses were insignificant as compared to the pressure drops at the vari ous fittings. All of the ports in the hydraulic components except for the power supply were specified to be SAE with O-rings to provide good sealing. Although the power suppl y had quick disconnect fittings at the supply and return connections, minimal leakage was detected during operation. Summary and Conclusions The mechanical and hydraulic system design details for the reduced DOF manipulator prototype were presented in this chapter. The manipulator requirements were derived from an analysis of the task requirements and dynamic simulations in RobotectPro. From these requirements, the sele ction of the hydraulic rotary actuators was discussed and the performance details of the selected vane actuators were provided. An appropriate joint layout for th e citrus harvesting manipulat or was selected from the various schemes and the cross-section for ade quate structural stiffness was determined. The different approaches for the design of th e roll joint and pitch joint were discussed

PAGE 126

110 and the detailed design for these joints wa s presented. The successf ul completion of the manipulator fabrication and asse mbly was presented at the end of this section. Following this, a hydraulic circuit for the valve contro l of actuators was developed and presented with the details on the various hydraulic elements that were chosen to implement the VCMM circuit. In conclusion, the prototype developed was mechanically stiff and had optimal strength-to-weight ratio. The joint-link arrang ements and the roll and pitch joint designs worked well in the limited tests that were conducted in the laboratory. A primary design enhancement to the current system could be the routing of hoses and electrical signal cables through the joint-links so that the enti re system is containe d and protected from adverse environmental effects. The hydrau lic circuit developed and implemented for VCMM was basic and needs further enhancements for better control of the joint motions. In particular, since a ll the actuators were powered from a single hydraulic pump, the fluid flow was inherently controlled by the load pr essure on the individual joints when all the joints were simultaneously actuated. Additiona lly, it was observed that even minor circuit changes needed considerable effort due to th e inflexibility of the hydraulic system. Also, inclusion of flow and pressure sensing devices in the circuit will gr eatly aid in monitoring and controlling the system in general. In chapter 9, the experiments and results from implementation of a joint level position control system for VCMM shall be presented along with the manipulator performance results.

PAGE 127

111 Figure 8-1. Type 2 manipulator configuration showing the la st four DOF for prototype construction. Figure 8-2. End effector prot otype for fruit harvesting. Figure 8-3. End effector FDF v ectors. Simulated force, Fz = 80 N pure pull. A B Figure 8-4. Hydraulic vane actuator A) Single vane and B) Double vane. Distal JointLink Pairs J0 J1 J2 J3

PAGE 128

112 A B C D E Figure 8-5. Joint-Link layout optio ns for four DOF manipulator. Figure 8-6. Joint-Link cross-section detail. Joint-Link A (cm) B (cm) J0/J1 J2/J3 8.89 11.43 7.62 10.16

PAGE 129

113 Figure 8-7. Roll joint exploded assembly. Figure 8-8. Pitch joint assembly.

PAGE 130

114 Figure 8-9. Manipulator joint-link layout. Figure 8-10. Assembled ma nipulator prototype.

PAGE 131

115 Figure 8-11. Hydraulic test ci rcuit with flow divider. Figure 8-12. Hydraulic circuit schema tic for valve cont rolled motor motion.

PAGE 132

116 Table 8-1. Manipulator dynamic pa rameters for RobotectPro model Joint-Link Actuator Transmission mass (kg) Joint-Link crosssection (cm) Joint-Link material properties Al 6061 J0 2 J1 2 J2 1 J3 1 Circular Outside diameter 8.89 Inside diameter 7.62 Density 2700 kg/m3. Elastic modulus 6.89400e+010 N/m2. Shear Modulus 2.55100e+010 N/m2. Table 8-2. Joint parameters from simulation. Joints Peak Torque (N-m) Average Torque (N-m) Average Joint Velocities (rad/sec) J0 J1 J2 J3 37.07 26.78 14.22 15.16 12.44 12.87 7.04 7.42 1.5383 2.6127 1.4332 0.7989 Table 8-3. Rotary hydraulic actuators performance data. Torque (N-m) Volumetric Displacement (cm3) Model 690 kPa 3450 kPa 6900 kPa per 280 per rad Approx. Weight (kg) MPJ-11 MPJ-22 0.90 6.33 6.33 37.63 13.22 76.73 13.69 62.61 2.92 13.36 0.34 1.36

PAGE 133

117 CHAPTER 9 CONTROL SYSTEM IMPLEMENTATI ON AND PROTOTYPE PERFORMANCE RESULTS Introduction The development of a fresh market robotic citrus harvesting system will require considerable research effort in the area s of fruit detection, robot manipulator, end effector, and control system. The kinematic and structural characteristics of the manipulator influence its reach, workspace, and dexterity capability that directly affect the performance of the entire robotic system . The kinematic and structural design, and prototype development of a su itably configured robot manipul ator were discussed in the preceding chapters. Also, a basic parallel hydraulic circuit was developed for the manipulator joint control a nd presented in chapter 8. In the present chapter, the implementation details for the joint level pr oportional closed loop control system for VCMM are provided. Following this, the experi ments designed to study the manipulator performance are presented along with the results from these experiments. The manipulator end point position control was designed typica lly as an open loop system while the individual join ts were controlled as a closed loop system. Electro-Hydraulic Control System Implementation The primary objective of the parallel hydrau lic circuit developed for VCMM for all the robot joints was to implement an angular position control for the individual joints through the use of feedback elements. As observed in chapter 8, the commercially available servo valves for continuous control of fluid flow through el ectrical signals are

PAGE 134

118 delicate and expensive, and th erefore unsuitable for the ci trus harvesting application where low cost and robustness are a necessity for acceptance in the agricultural industry. This necessitated the use of proportional bi-dir ectional spool type valv es with their flow orifice varied in proportion to the force induced by electrical signals applied to the dual solenoids. The details on the electro-hydrau lic position control scheme for the robot manipulator joints are presented in this sec tion. The manufacturer specifications for the electro-hydraulic control sy stem components that include the dual solenoid operated valves, dual solenoid amplifiers, potentiomete rs for angular position feedback, and the data acquisition cards can be found in appendix D. Joint Angular Position Control For joint mode control, a purely propor tional closed loop control system was implemented through the electro-hydraulic valv es driven by dual solenoid drivers. The valve controllers received a voltage signal from the DAQ system and sent a Pulse Width Modulated (PWM) current signal proportional to the flow rate to the valve solenoids. The angular position was sensed continuously a nd the generated error signal was used to proportionally control the actuator motion. The block diagram of the closed loop angular position control scheme for a single actuator us ing a switched directi onal control valve is shown in Figure 9-1. The absolute angular positions of the actuators were sensed using rotary potentiometers that produce vol tage signals proportional to the measured angles. The sensed signals were then fed back and comp ared with the command signals of the desired angular positions. The error signal created from this operation was then scaled to generate the proportional voltage signal to the dual solenoid amplifier that amplified the signal to energize the valve solenoids through a pulse width modulated current signal. The valve

PAGE 135

119 remained in the spring-centered position until one of the solenoids was energized. Energizing the solenoids caused the spool to mo ve to a particular pos ition and stay until the solenoids were de-energized. The valves were continuously adjusted to correct for errors in the detected angular positions thereby executing the cl osed loop control of VCMM. An in depth treatment of electro-hydr aulic control systems and their components can be found in Merritt (1967), Es posito (1988), and Watton (1989). Valve Configuration The spool valves are typically classified by the number of ways the fluid can enter and leave the valve, the number of lands, and the valves centering configuration when in neutral position. A schematic of the four way valves used for VCMM is shown in Figure 9-2. In the figure, the ports 1 and 2 were pressurized to the levels indicated by P1 and P2 and used for directing fluid flow to and aw ay from the load. When the spool was moved in the positive X direction, flow was a llowed into port 1 with a volumetric flow rate Q1 while port 2 was opened to the return line with a volumetric flow rate Q2. The flow direction was reversed when the spool was moved in the opposite direction. The supply and the return pressures and the co rresponding flow rates are designated Ps and Pr, and Qs and Qr, respectively. As the valves were closed -centered, the land wi dths were greater than the port widths leading to an overlapped region. The flow gain for the valves is shown in Figure 9-3. The flow gain i ndicates the presence of a deadband Db due to the overlap region that required the valves to be moved a certain distance before the flow metered in. Thus, in the deadband region, an input signal did not cause a corresponding output signal thereby causing a nil respons e signal band and typically resulted in a steady-state error. The mechanical deadba nd characteristic was compensated for using the electronic deadband jump setting avai lable on the dual solenoid amplifier.

PAGE 136

120 The linearity that exists between the valve displacement and the input current makes the output proportional to the input thus making these valves proportional directional control valves. Identi cal valves were used for all the joints and the valve input to output performance curve is shown in Figure 9-4. For 24 volts direct current (VDC) operational mode, the flow metered in at 0.20 A and full flow was realized at (0.50 to 0.55) A. Dual Solenoid Amplifier for Valve Control Figure 9-5 shows a schematic of the VCMM with the dual solenoid amplifier hooked to the solenoid operated proportional di rectional control valv e. The dual solenoid amplifier used for valve control was obtaine d from Hydraforce (Lincolnshire, IL). The multiple input and output electrical signal form ats for the controller/amplifier allowed for flexibility in designing the cont rol system. The user specifie d selections can be made on the controller through the Dual Inline Pack age (DIP) switch settings. The voltage input signal mode was chosen for all the joints w ith a range of VDC. The supply voltage to the controller was matched to the solenoid valve coil rating of 24 VDC. The output mode used was analog proportional direct current signal with a range of (0 to 2) A. The valve controller was equipped with a high frequenc y (20 kHz to 30 kHz) PWM converter and a low pass filter to generate the output current signal with the pulse amplitude and duty cycle directly proportional to the input voltage. The controller also has an electronic d eadband jump setting to provide corrective signal for the mechanical deadband present in the spool valve. Although the overlap reduces leakage in the null pos ition and provides greater safe ty during power failure or emergency stop situations, it was undesirab le for continuous position control of the actuators. The deadband jump was acco mplished through the selection of the

PAGE 137

121 corresponding DIP switch and by setting the minimum current signal needed for the solenoid coils to allow fluid flow through spool movement. This will cause the valve spool to jump to this setting when power is applied. Also, the maximum current signal was used to limit the gain of the amplif ier for the experiments ensuring that the manipulator joints were opera ted at a safe speed level by restricting the maximum valve opening for full input signal. The minimum and the maximum current settings for the four joints and the maximum joint speeds th at were observed empirically are shown in Table 9-1. The spool valve movements were also aff ected by stiction and hysteresis. Stiction causes the valve spool to not move for small changes in the signal i nput and hysteresis is the quality of the spool to shift differently depending on the direction of the control signal even for identical input values. These nonlin earities of the spool valve were reduced through the dither setting on the electronic controller. Dither is a small, rapid movement of the spool around the desired position. Th e constant movement helps in avoiding stiction and averages out hysteresis. The low frequency dither signal was generated separately and superimposed on the high frequency PWM output signal. The dither amplitude was about 1 % of maximum current and the frequency was about 140 Hz for the solenoid valves used in the electro-hydrauli c control circuit. The other settings for the controllers were ramps for the valve coils that aid in the smooth tran sition of the abrupt input signal changes. The default valu e for the ramp setting was 0.01 seconds for acceleration and deceleration and was used for all joints to maintain the fast valve response times. The proportionality of the output current signal to the input voltage signal is presented in Figure 9-6.

PAGE 138

122 Feedback Transducer As mentioned earlier, the angular positions of the manipulator joints were sensed with rotary potentiometers that converted th e mechanical rotations of the actuators to proportional electrical voltage signals through the movement of a wiper attached to the potentiometer shafts. The potentiometer shafts were coupled to th e back ends of the actuator shafts, while the bodies of the poten tiometers were held stationary through the use of L-shaped brackets. A 12 VDC signal wa s input to the potent iometer terminals at opposite ends and the actuator shaft positions were determined by reading the output voltage from the middle terminal through the DAQ board and were used for the closed loop electro-hydraulic control of the actuato r positions. The potentiometers used were obtained from ETI systems (Carlsbad, CA) and we re single turn with an electrical angle of 340 and had 10 k resistance with infinite resolu tion. The potentiometer sensitivity was calculated to be 0.03061 V/deg and has a rotational life of 10 million turns. Data Acquisition Boards As the electro-hydraulic control system was implemented on a microcomputer, the data generation and handling between the various components was accomplished through the use of data acquisition cards. Four analog inputs to read the joint angles through the potentiometer feedback and four analog output signals to send the commanded voltage to the valve controllers/amplifiers were needed for the electro-hydraulic control system. Two DAQ cards from National Instruments (Aus tin, TX) were used for this purpose. As one of the DAQ cards had limited analog output ra nge of (0 to 5) V, a level shifter was constructed to shift the si gnal range to V. The analog input values from the potentiometers were sampled at 1 kHz and 10 samples at a time. The analog output was written one value at a time.

PAGE 139

123 Electro-Hydraulic Control Circuit and Software Once the components needed for the contro l system were specified and procured, the control system algorithm development was performed on an x86-based PC with ~909 MHz processor and 768 megabytes of memory. The signal flow diagram for the electrohydraulic control circuit is shown in Figure 9-7 and the completed system circuit is shown in Figure 9-8. Figure 9-9 shows the c ontrol cabinet with the electro-hydraulic control system components mounted on the side of the citrus harvesting robot manipulator pedestal. A user interface was created for the joint space control of the manipulator in Visual C++ using Micros oft Foundation Classes (MFC) on a Windows platform. The software implementation is repr esented in the form of a pseudo code in Figure 9-10 and the actual code is provided in appendix D. Manipulator Performance Experiments and Results Two primary performance attributes were experimentally tested for the citrus harvesting manipulator. A set of experiments were designed to verify the end point fruit detachment force (FDF) capability and the robot manipulator kinematic model verification through joint space trajectory ge neration. The experimental setup and the results obtained from the experiment s are presented in this section. Fruit Detachment Force Capability In chapter 8, the FDF values from the field experiments were used to perform dynamic simulation of the robot manipulator m odel to derive the jo int actuator torque requirements. The maximum resultant force for fruit picking was found to be 100 N to 120 N. In order to characterize the force gene ration capability of the manipulator at the end point, a test was setup that included a force gauge with a maximum capacity of 200 N and a test bench with a mechanical vice to grip one end of the force gauge. The

PAGE 140

124 measurement end of the force gauge was conn ected to the last pivot link of the robot manipulator using a tie cable. The test setup is shown in Figure 9-11. Once the setup was in place, two pulling movements were executed utilizing the pitch joints in the robot manipulator configur ation at very low speeds. Three iterations were performed to verify consistency. The hydr aulic system pressure was set at 5171 kPa and the oil temperature was 26.67 C. The first movement was a pure p itch rotation of the last joint and the force read at the end point was between 110 N to 120 N before the joint stalled. The second movement was a combinati on of the two pitch joints maintaining the end effector attachment surface at the last link perpendicular to the measurement plane. The forces recorded were between 70 N to 80 N. The primary contributor to the pull force in this movement was joint J1 that carried a moment arm comprised of the jointlink pairs J2 and J3 with a mass of 4.536 kg and a length of 27.94 cm. Thus the force capability at the end point was reduced for this movement. Additional torque from the actuators could be realized by increasing the operating pressure as well as replacing the unhardened gears used at th e pitch joints. The gears ha ve good torque transmission capability at low speeds, but performance is limited at higher speeds. Nevertheless, the tests verified the capability of the distal join ts to impart enough force at the end point to harvest most citrus fruits wit hout the torque input from base joints. This will be useful for harvesting inner canopy fruits where the movement of the base joints might be restricted. Robot Manipulator Kinema tic Model Verification In order to experimentally verify the kinematic model and the workspace of the robot manipulator designed for citrus harves ting, a test setup to record the end point positions for commanded joint movements was designed and implemented as follows. The kinematic model of the distal joint li nk pairs is shown in Figure 9-12. The right

PAGE 141

125 handed coordinate frames were attached following the modified D-H parameter convention and the mechanism parameters are given in Table 9-3. The transformation matrix from the tool frame to the base fr ame was derived using the forward kinematics (FK) analysis. The end point positions were determined for given joint positions using the FK algorithm. These end point positions were ve rified using an experi mental test setup as shown in Figure 9-13 and Figure 9-14. The general transformation matr ix derived in chapter 5 (E quation 5-2) is presented in Equation 9-1 for reference. The transformati on matrix from the last joint frame to the base frame is then found by applying th e general transformation matrix for the subsequent joint coordinate frames. Equa tion 9-6 gives the transformation matrix TO 4 from coordinate frame {4} to coordinate fr ame {0} for the four DOF manipulator. As the tool frame is attached to the end link, a pure offset as given in Equation 9-7 from the last joint frame to the tool frame completes the transformation. The tool position in the base frame {0} can be found from the tool coordi nates in frame {4} and the transformation matrix T0 4as shown in Equation 9-8. 1 0 0 0 cos cos sin cos sin sin sin sin cos cos cos sin 0 sin cos1 1 1 1 1 1 1 1 1 1 i i i i i i i i i i i i i i i i i i id d a T (9-1) 1 0 0 0 40 . 25 1 0 0 0 0 cos sin 0 0 sin cos1 1 1 1 0 1 T (9-2) 1 0 0 0 0 0 cos sin 0 1 0 0 0 0 sin cos2 2 2 2 1 2 T (9-3)

PAGE 142

126 1 0 0 0 0 0 cos sin 72 . 45 1 0 0 0 0 sin cos3 3 3 3 2 3 T (9-4) 1 0 0 0 0 0 cos sin 0 1 0 0 0 0 sin cos4 4 4 4 3 4 T (9-5) 1 0 0 03 33 32 31 2 23 22 21 1 13 12 11 3 4 2 3 1 2 0 1 0 4p r r r p r r r p r r r T T T T T (9-6) where, 2 3 2 1 2 2 1 1 3 2 33 4 2 4 3 2 32 4 2 4 3 2 31 3 1 3 2 1 23 4 2 1 4 3 1 3 2 1 22 4 2 1 4 3 1 3 2 1 21 3 1 3 2 1 13 4 2 1 4 3 1 3 2 1 12 4 2 1 4 3 1 3 2 1 11cos 25 / 1143 5 / 127 sin sin 25 / 1143 sin cos 25 / 1143 sin sin cos cos sin cos sin sin cos cos cos sin cos cos sin cos sin cos sin sin sin sin cos cos cos sin sin sin sin cos sin cos cos cos sin cos sin sin cos cos cos sin cos sin sin sin cos cos cos sin sin cos cos sin sin cos cos cos p p p r r r r r r r r r cm in P ToolOffsetTool 1 0 255 . 8 04 (9-7) Tool ToolP T P4 0 4 0 (9-8) A total of eight joint vectors were used resulting in eight unique end effector positions in the manipulator workspace. The jo int vectors as referred to the coordinate frame attachment shown in the kinematic mode l in Figure 9-12 are presented in Table 9-

PAGE 143

127 3. Included in the joint vectors are the manipulator reachable end point position boundaries. The tool point posit ions obtained from the em pirical measurements is provided in Table 9-4 along with the calcula ted values from the FK algorithm. The closeness of the theoretical and actual positi on values verifies the kinematic model used for the robot manipulator. In addition to this , the position error can be studied by plotting the calculated and the measured values of th e X, Y, and Z coordinates as presented in Figure 9-15. Studying the manipulator poses at the given joint positions and the corresponding errors between the anticipate d and the actual position values, it was apparent that gravitational effects contributed to the errors on all three directions as the manipulator was not capable of maintaining a position even while the valves are in the null position as cross-port leakage starts to o ccur on the actuators. In order to counteract this, the joint positions were continuously m onitored and the fluid flow to the actuators was maintained in case of joint movement without user input. A lthough this helped to maintain the joint positions, there were minor oscillations at the end point as the system was never allowed to settle down. An accumula tor in the hydraulic circuit might help to overcome this problem by mainta ining flow to the actuators while the valves are in the null position. Conclusions An electro-hydraulic actuator position control system was implemented for joint mode control of the robot manipulator. Th e performance of the purely proportional controller was satisfactory for the purposes of testing and validati on of the manipulator design. The two sets of experiments that we re conducted for manipulator performance provided design validation and shed light on the areas of improvement needed for the manipulator. The FDF requirements for citrus harvesting had a maximum range of about

PAGE 144

128 100 N to 120 N. The pull force experiments using a force gauge and a mechanical vice to mimic fruit picking characterized the for ce generation capability of the manipulator. From the torque ratings of the actuators , the pressure of 5171 kPa was found to be adequate to handle the loads at the manipul ator joints and was used through out the experiments. Nevertheless, the actual pressure at the actuator ports might be lesser due to the leakages in the system. The low mass of the prototype (~16 kg) and the potential for low cost were positive attributes of the hydraulic manipulator developed for citrus harvesting. The second set of experiments conducted yielded the end point position accuracy as well as verified the kinematic model created for the manipulator. The general performance of the manipulator in its work space was acceptable for this initial design prototype. The kinematic structure having dua l roll-pitch modules is expected to be suitable for the citrus harvesting application due to their high dexterity in tight spaces.

PAGE 145

129 Figure 9-1. Block diagram for cl osed loop angular position cont rol of hydraulic actuator. Figure 9-2. Overlapped four way spool valve schematic. Figure 9-3. Flow gain for a closed-center valve.

PAGE 146

130 Figure 9-4. Proportional solenoid valve curren t input to flow output performance (see manufacturer specification in appendix D). Figure 9-5. VCMM schematic with dual solenoid driver input. Figure 9-6. Input to output signal proportiona lity of the dual solenoid amplifier (see manufacturer specification in appendix D). Acce p table Ran g e

PAGE 147

131 Figure 9-7. Signal flow diagram for el ectro-hydraulic c ontrol circuit.

PAGE 148

132 Figure 9-8. Electro-hydraulic system circuit.

PAGE 149

133 Figure 9-9. Electro-hydraulic cont rol system components A) Dual solenoid amplifier, B) USB DAQ board, C) Level shifter. A B C

PAGE 150

134 Objective: The objective of the program is to execute the desi red joint positions that are obtained as a user input and set a default home position for the joints. Program Pseudo code: -Initialize DAQ to read and write data. -Set valve controller to maintain valve center position. IF START -From the user input field get the desired positions for four joints, J0, J1, J2 and J3. Validate user inputs -IF any desired joint position is NU LL (user did not enter any value) -Set desired joint position = current joint position. IF user inputs are validated -Convert the desired joint positions in degr ees to corresponding potentiometer voltages using joint ranges and the input voltage to potentiometer -Configure DAQ to read potentiometer voltages. -Read potentiometer voltages corresponding to current positions for all four joints. -Determine error using equation: V0err = V0des – V0cur V1err = V1des – V1cur V2err = V2des – V2cur V3err = V3des – V3cur where, V0err is the error voltage for joint J0 V0des is the desired potentiometer voltage for joint J0 V0cur is the current potentiometer voltage for joint J0, likewise for the other joints. -Call four threads to execute movement of four joints to desired positions using the following steps -SWITCH (Is thread active?) Case YES: While (YES) -Read potentiometer voltage for joint from DAQ -IF (abs(Joint error) > 1 deg) -Determine the proportional command voltage to the valve controller (scaled error voltage determined using calibration) -Write the determined value to DAQ which is connected to the valve controller -ELSE IF(abs(Joint error) < 1 deg) -Hold position Case NO: -Kill thread ELSE IF HOME -Set joints to default home positions using steps described in START. ELSE IF CANCEL -Set valve controller to maintain valve center position. ELSE IF OK -Close the application. Figure 9-10. Pseudo code for angular positi on control of the manipulator joints.

PAGE 151

135 Figure 9-11. FDF veri fication test setup. Figure 9-12. Kinematic model for the four DOF robot manipulator. Figure 9-13. Experimental setup for robot manipulator kinematic model verification. YO ZO O O – Base Frame Origin End effector attachment surface Force gauge

PAGE 152

136 Figure 9-14. Height measurement using plum b bob attached at manipulator end point. 1 8 -50 -25 0 X (cm) 1 2 3 4 5 6 7 8 -100 -75 -50 -25 0 25 50 75 100 Y (cm) 1 2 3 4 5 6 7 8 25 50 75 100 Data SetZ (cm) Zfk Ze Yfk Ye Xfk Xe Figure 9-15. Error between cal culated and actual manipulat or end point coordinate values. ZG XG YG G Global coordinate system

PAGE 153

137 Table 9-1. Deadband jump and maximum amplifier gain settings. Joints Pressure and Temperature for Experiments Amperage setting for Solenoid A, A Amperage setting for Solenoid B, A Approximate maximum speed rad/s J0 J1 J2 J3 Pressure = 5171 kPa Temperature = (26.67 to 37.7) C Imin = 0.258 Imax = 0.306 Imin = 0.272 Imax = 0.324 Imin = 0.216 Imax = 0.234 Imin = 0.233 Imax = 0.240 Imin = 0.233 Imax = 0.306 Imin = 0.229 Imax = 0.266 Imin = 0.241 Imax = 0.251 Imin = 0.271 Imax = 0.279 /2 /2 0.6945 0.6945 Table 9-2. Mechanism parameters for four DOF manipulator. i ai-1 (cm) i-1 (rad) di (cm) i (rad) 1 2 3 4 0 0 0 0 0 /2 /2 /2 25.400 0 45.720 0 1 (0 3 /2) 2 (0 ) 3 (0 3 /2) 4 (0 ) Table 9-3. Joint vectors used for ma nipulator performance experiment. Units: radians Set 1 Set 2 Set 3 Set 4 Set 5 Set 6 Set 7 Set 8 J0 J1 J2 J3 0 /2 0 /2 /2 /2 0 0 /2 /2 0 0 0 0 0 0 /2 /4 /4 /2 7 /36 4 /9 /4 /4 /2 /4 /4 /2 /4 4 /9 /4 /4 Table 9-4. Kinematic model verification. Units: cm Set 1 Set 2 Set 3 Set 4 Set 5 Set 6 Set 7 Set 8 Xfk Xe Xerr -45.720 -44.767 -0.953 0 1.905 -1.905 0 2.540 -2.540 0 2.540 -2.540 5.837 6.35 -0.513 -39.811 -37.465 -2.346 -5.837 -10.795 4.958 -42.528 -44.450 1.922 Yfk Ye Yerr 0 0.635 -0.635 -53.975 -53.340 0.635 53.975 53.657 0.318 0 2.540 -2.540 -28.201 -26.352 -1.849 -32.914 -34.925 2.011 28.201 28.575 -0.374 29.319 26.670 2.649 Zfk Ze Zerr 33.655 33.020 0.635 25.400 24.130 1.270 25.400 24.130 1.270 79.375 80.010 -0.175 61.856 61.912 -0.056 30.288 27.305 2.983 61.856 60.325 1.531 30.288 25.717 4.571 fk Values from FK analysis, e Values from experiment, err Error = Valuefk Valuee

PAGE 154

138 CHAPTER 10 SUMMARY AND CONCLUSIONS Summary Development of a robotic automation system for the citrus harvesting task was the subject of this study. The results from previ ous developments underscored the need for a task-specific robot manipulator configuration for the citrus harvesting application. Stateof-the-art software tools for the synthesis of robot manipulat ors were evaluated and their usage for the development of a citrus harves ting manipulator was de monstrated. A formal methodology for the geometric performance analysis of robot configurations that utilized dexterity measures derived from the mani pulator Jacobian was presented and the procedural application of the performance in dices was demonstrated through an example. In the application example, two common six DOF robot configurations were modeled in The Robotics Toolbox and the dexterity perf ormance measures were constructed and used for the evaluation of thes e configurations as applied to the citrus harvesting task. Among the dexterity indices derived from the manipulator Jacobian, the translational and rotational singular values were found to have a physical meaning if used with specific constraints and could be used for the eval uation of manipulation ability of citrus harvesting manipulator configur ations. The ellipsoid representation of the singular values also provided a visual clue as to the n earness to singularities from the manipulator’s current pose. The dexterity analysis technique was then applied in a modeling environment to evaluate and compare four alternative mani pulator configurations considered to be

PAGE 155

139 suitable for the citrus fruit harvesting applic ation. The tree size and the fruit distribution on the tree were used to derive the task sp ace design specifications. A modular approach for fruit picking using a HAP led to the re duced work volume for the fruit harvesting manipulator (1/16 of the tree volume). A to tal arm reach of 1.74 m was determined to cover the reduced work volume. Four confi gurations were designe d with the joint-link lengths and motion ranges satisf ying the task space requirem ents. Models were generated in RobotectPro and a virtual simulation envi ronment was constructed. Fruit harvesting motion trajectories were generated and the de xterity of the manipulat or postures along the trajectories was compared. Of the four configurations, Type 2 (rrp-RPRP) seven DOF manipulator configuration with mixed prismatic and rotary joints displayed a balanced translational and rotational dexterity perf ormance and was recommended as a potential overall configuration for the citrus harvesti ng application. The performance of the distal joints or the last four DOF contributing to the rotational cap ability of the manipulator was found to be adequate for the citrus harvesting task requirements. The design and development of the four DOF robot manipulator comprising the distal joint-link pairs (RPRP) of the sele cted configuration was accomplished. The basic requirements for the manipulator such as payload, required end point forces for successful fruit harvesting, size, weight, and co st were derived from the citrus harvesting task specifications. Applicat ion of inverse dynamics using the payload and intermittent FDF values yielded the manipulator joint to rque requirements. Pe rformance and cost comparison of available electric and hydraulic actuation systems resulted in the selection of LSHT hydraulic actuators for the citrus harvesting manipulator prototype primarily due to their high power and to rque density. The detailed mechanical design of the joint-

PAGE 156

140 link pairs ensued after the act uator selection process. The selected hollow square crosssections for the joint-link pa irs satisfied the high stiffness requirement and housed the actuators and feedback transducers. The hollo w construction also allowed partial routing of hydraulic hoses and signal cables. Evaluati on of the various choi ces for the joint-link layouts led to the selection of a nil offset layout, but requir ed reduction of joint rotation range from to for th e pitch joints J1 and J3. It wa s expected that this reduction in the angular range will not a ffect the dexterity capability of the robot manipulator in the harvesting poses. Solid modeling of the jo int-link arrangements and finite element analysis of the various weight carrying compone nts verified the structural integrity of the design. The design also achieved the objective of assembly ease and low weight through the construction of joint-link st ructures from thin aluminum plates. The design targets on size, weight, and cost were clos ely met by the actual prototype. The next stage in the prototype developm ent was to design an electro-hydraulic control system for the actuator motion. A VCMM hydraulic circuit was developed and implemented with the choice of off-the-shel f hydraulic components. An electro-hydraulic control circuit was deve loped and applied as well for th e closed loop position control of the robot manipulator joints. The deadband charac teristic of the solenoid valves used for VCMM was reduced through electronic deadband jump and the valves were calibrated individually for optimal performance. The so lenoid valves were highly economical as compared to the servo valves available fo r similar purpose although their flow precision and calibration were not ideal. The closed loop position cont rol of the individual joints was performed through the continuous sampling of the potentiometer feedback from the joint actuators. The

PAGE 157

141 microcomputer based control system wa s implemented through the DAQ and the solenoid amplifiers. The performance of the purely proportional controller was satisfactory for the limited experi ments undertaken in this study. Experimental determination of the ma nipulator performance was the final objective. Two sets of experiments were design ed primarily to verify the end point force generation capability and to verify the kinematic model of the four DOF robot manipulator. The FDF experiment s verified that the designed distal joint-link pairs could be used for harvesting most fruits without th e need for additional ac tuation of the base joints. In the second set of experiments, the end point positions for the given joint vectors were measured empirically and compared with the values from the FK analysis. End point position error was present along all three directions. It was reasoned that the large errors at the end point were primarily accumula ted errors in the joints as the end point position was not monitored and the manipulat or was in open loop operation. Also, the absolute position readings from the pot entiometers were less than optimal. Overall Conclusions and Future Work In conclusion, this work on the design a nd development of a robot manipulator for citrus fruit harvesting contributed both to th e general research area of agricultural robot manipulators and to the specifi c research efforts on robotic automation for citrus fruit harvesting in Florida. It was realized that the pr oper application of software tools for robot synthesis greatly aid in the authentic ation of design decisions th rough simulations and allow exploration of alternatives without the need for physical prototypes. The importance of the selection and application of performan ce metrics for the evaluation of alternative solutions was brought forth. It was concluded that the existing form ulations for studying

PAGE 158

142 the dexterity performance of manipulators as applied to the fruit harvesting task require stiff constraints such as the choice of a metr ic, scaling factor for mixed units, and clear physical meanings as associated with the task. The handling of the translation and rotation components separately will aid in the analysis if the design structure is constrained to homogeneous joint types. Also the simulation studies using the dexterity indices should be extended to include additional trajectories covering the entire workspace in the analysis for more accura te determination of the manipulator performance. Also performance indices cust omized to the task requirements should be developed that could include additional considerations such as ease of construction and cost with proper weightings for each requirement. The design and development of the initial prototype shed light on a number of basic design choices for the citrus harvesting ma nipulator. Although the decision to use hydraulic actuation for the joints of the ma nipulator was primaril y due to their high power and torque densities and cost, the inflexibility of the hydraulic circuits for any modifications during the development pro cess is bothersome. This would dictate considerable time, money, and effort to en sure the design of a reliable system. The selected actuators provided adequate torque in compact sizes, but, the presence of cross port leakage is a problem for proper electro-hyd raulic control of the manipulator joints and was possible only through continuous signa ling of the solenoid amplifiers around the desired position. This could be addressed with the application of brak es at the joints or providing flow compensation in the VCMM circ uit for holding of joint positions. Braking of the joints is also necessary during power o ff conditions due to the internal leakages in the actuators. Although there is no sudden move ment of the joints during power failure

PAGE 159

143 due to the natural damping of the hydraulic oil, it still is a necessity for safety considerations. It is also noted that noise and oil contamination are issues that need to be addressed. The future developments should also consider electrically actuated joints with harmonic drive reducers that provide hi gh torque output in a small envelope. The mechanical design, fabr ication, and assembly of the manipulator prototype satisfied the design specifications in certain areas and require improvements in others. The manipulator weight of 16 kg closely matched the design specification of 14 kg. Additional weight reduction might require the use of alternative mate rials such as carbon composites and/or re-selection of the joint co mponents and reducing the cross-section of the joint-link pairs. Also, additional modifications at the intersection of the roll-pitch joints for routing hoses through a stationa ry and a rotating member is needed. The existing rotary unions for fluid transfer are expensive and bulky. As the links are fabricated for ease of assembly, the hoses could be accommodated inside the existing manipulator structure w ith proper modifications. The electro-hydraulic position contro l system for the VCMM circuit was accomplished through the use of solenoid valv es. The cost-to-benefit in using the proportional solenoid controlled valves instead of the servo valves is considerable and should be pursued in future developments of hydraulic manipulators. Areas of further research include a robust control system for the position, velocity, and torque control of the manipulator. The outer open loop for e nd point position tracking can be closed through the inclusion of a vision feedback a nd additional sensors. Also, the manipulation ability of the manipulator should be verified with actual fruit harv esting experiments in the field and necessary changes be made to the system.

PAGE 160

144 APPENDIX A NUMERICAL EXAMPLE FOR COMPUTAT ION OF DEXTERITY PERFORMANCE INDICES Problem specifications Robot manipulator: Articulated arm with RPR wrist as pr esented in Figure 6-4 and Table 6-2 Manipulator start pose (joi nt vector in radians): [1.5708, -1.7741, 4.4506, 3.1416, -1.5184, 0] Manipulator end pose: [0.7400, -2.4077, -3.1154, 2.2000, -1.0473, 0] Trajectory completion time: 2.5 s Time step: 0.05 s Translational and rotational manipulability Step1: Compute joint space trajectory from manipulator start pose to end pose. The number of points is equal to the length of the time vector ( 51, in this case). The function in The Robotics Toolbox uses a 7th order polynomial with zero boundary conditions for velocity and acceleration. The generated trajectory is an rxc matrix with each row representing a jo int vector with c joint parameters for each time step. Sample computation of the joint space trajectory be tween the start and end pose yields the following matrix. Joint trajectory = 0 1.0473 2.2000 3.1154 2.4077 0.7400 0 1.0473 2.2001 3.1155 2.4077 0.7401 0 1.0476 2.2006 3.1162 2.4073 0.7405 .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... 0 1.5182 3.1410 4.4498 1.7745 1.5703 0 1.5184 3.1415 4.4505 1.7741 1.5707 0 1.5184 3.1416 4.4506 1.7741 1.5708 51 x 6

PAGE 161

145 Step 2: Compute the translational and the rotati onal Jacobian matrices for each time step along the trajectory with respect to the tool frame. For each time step, both the translational and rotational Jacobians will be 3 x 6 matrices thereby yielding a 153 x 6 matrix for all time steps. The Jacobians for the start step is presented below. 0 0 0 0.9519 0.2183 0.0000 0 0 0.2029 0.0000 0.0000 0.4104 0 0.2032 0.0000 0.2531 0.4090 0.0000 JTstart 3 x 6 1.0000 0.0000 0.0523 0.0000 0.0000 0.0061 0 1.0000 0.0000 1.0000 1.0000 0.0000 0 0 0.9986 0.0000 0.0000 1.0000 JRstart 3 x 6 Step 3: Calculate translational manipulabi lity and rotational manipulability from the respective Jacobians. Translational manipulability, N J J wT Tstart Tstart T 3) det( (Scaling factor N = 3.6343) For start pose, wT = 0.0870 Rotational manipulability, N J J wT Rstart Rstart R 3) det( (N = 1) For start pose, wR = 1.8173 Directional invari ance of dexterity Perform Steps (1 & 2) as in the previ ous example. Then proceed to Step 3. Step 3: There are multiple ways to calculate DID. One of the ways is to find the eigenvalues of the quadratic fo rm of the Jacobian matrices for the translational and rotational cases and then compute the minimum and maximum singular values. )) ( max( )) ( min(T Tstart Tstart T Tstart Tstart TJ J eigenvalue J J eigenvalue DID = 0.3573 (at start pose) )) ( max( )) ( min(T Rstart Rstart T Rstart Rstart RJ J eigenvalue J J eigenvalue DID = 0.5775 (at start pose)

PAGE 162

146 Translational and rota tional singular values Perform Steps (1 & 2) to calculate the tr anslational and rotational Jacobians. Then proceed to Step 3. Step 3: Compute the singular va lues of the Jacobians by SVD. T T T T TstartV U J SVD ) ( 0.3755 0.0000 0.9268 0.0000 1.0000 0.0000 0.9268 0.0000 0.3755 UT; 0 0 0 0.3726 0 0 0 0 0 0 0.4578 0 0 0 0 0 0 1.0429T 1 0 0 0 0 0 0 0.8538 0.1055 0.1133 0.4943 0.0522 0 0.1012 0.8902 0.0134 0.0586 0.4402 0 0.5054 0.0000 0.3298 0.7973 0.0000 0 0.0000 0.4433 0.0000 0.0000 0.8964 0 0.0732 0.0000 0.93710.3413 0.0000 VT T The translational singular values are T T Tz Ty Tx T3726 . 0 , 4578 . 0 , 0429 . 1 , , T R R R RstartV U J SVD ) ( 0.9989 0.0462 0.0000 0.0000 0.0000 1.0000 0.0462 0.9989 0.0000 UT; 0 0 0 1.0003 0 0 0 0 0 0 1.4140 0 0 0 0 0 0 1.7321 T 0.0017 0.2111 0.0292 0.7880 0.5769 0.0292 0.0000 0.7887 0.0000 0.2113 0.5774 0.0000 0.0413 0.0087 0.7064 0.0326 0.0239 0.7054 0.9986 0.0000 0.0061 0.0000 0.0000 0.0523 0.0327 0.0000 0.7072 0.0000 0.0000 0.7062 0.0000 0.5774 0.0000 0.57740.5774 0.0000 VT T The rotational singular values are T T Rz Ry Rx R0003 . 1 , 4140 . 1 , 7321 . 1 , , The manipulability/dexterity ellipsoid volumes can be calculated from the singular values and the ellipsoids can be generated with th e axes lengths proportional to corresponding singular values. The ellipsoid volum es are calculated as follows: Translational ellipsoid volume = 7451 . 0 3 4Tz Ty Tx Translational ellipsoid volume = 2622 . 10 3 4 Rz Ry Rx

PAGE 163

147 The manipulability computation for the entire trajectory is shown in the plots below. The cursor marks the calcula ted values at start pose.

PAGE 164

148 APPENDIX B COORDINATE FRAME ATTACHMENTS AND MECHANISM PARAMETERS FOR ROBOT MANIPULATOR CONFIGURATIONS Frame attachments using right handed coordinate system Type 1 Type 2 Type 3 Type 4

PAGE 165

149 Mechanism parameters Manipulator Link i Link length ai-1 m Twist angle i-1 deg Link offset di m Joint angle i deg Joint angle range i range deg or m Type 1 1 2 3 4 5 6 7 0 0 0 0 0 0.21590 0.21590 0 90 -90 0 90 0 0 0.22860 0 d3 0.17145 -0.08890 0.17780 -0.08890 1 2 0 4 5 6 7 -135,+135 -100,0 0.5461,0.9271 -180,+180 -45,+225 -135,+135 -135,+135 Type 2 1 2 3 4 5 6 7 0 0 0 0 0 0 0 0 90 -90 0 90 -90 90 0.22860 0 d3 0.17145 -0.10000 0.36830 0.10000 1 2 0 4 5 6 7 -135,+135 -100,0 0.5461,0.9271 -180,+180 -45,+225 -180,+180 -45,+225 Type 3 1 2 3 4 5 6 7 0 0 0.48895 0 0 0.21590 0.21590 0 90 0 -90 90 0 0 0.22860 0 0.03810 0.45085 -0.08890 0.17780 -0.08890 1 2 3 4 5 6 7 -135,+135 -10,+90 -90,+90 -180,+180 -45,+225 -135,+135 -135,+135 Type 4 1 2 3 4 5 6 7 0 0 0.48895 0 0 0 0 0 90 0 -90 90 -90 90 0.22860 0 0.03810 0.45085 -0.10000 0.36830 0.10000 1 2 3 4 5 6 7 -135,+135 -10,+90 -90,+90 -180,+180 -45,+225 -180,+180 -45,+225 Tool frame offset from last joint coordina te frame for: Type 1 and Type 3 = 0.29210 m Type 2 and Type 4 = 0.29845 m

PAGE 166

150 APPENDIX C BILLS OF MATERIALS FOR RO BOT MANIPULATOR PROTOTYPE Mechanical Components Item No. Qty. Mfr. Part No. Description 1 1 5205-2RS Double row angular contact ball bearing 2 1 RIT Bearings 5209-2RS Double row angular contact ball bearing 3 2 FR8-ZZ 1/2" bore radial ball bearing 4 3 R12-ZZ 3/4" bore radial ball bearing 5 1 Boca Bearings R6-5ZZ 1/2" bore radial ball bearing 6 2 L127Y Miter gear 7 2 Boston Gear L115Y Miter gear 8 1 98535A130 key stock 1/8" x 1/8", 12" L 9 1 98535A140 key stock 3/16" x 3/16", 12" L 10 1 1346K17 1/2" OD, 12" L precision shaft 11 1 1346K31 3/4" OD, 12" L precision shaft 12 1 3088A722 1/2" ID, 3/4" OD steel shim 13 1 3088A724 3/4" ID, 1-1/8" OD steel shim 14 1 1073K51 open gear lubricant 15 McMaster-Carr Screws, Nuts, and Washers 16 Ag. Machinery Lab Aluminum Al 6061 bars/plates Control System Components Item No. Qty. Mfr. Part No. Description 1 4 Hydraforce 4000149 Dual Solenoid Driver 2 4 ETI Systems SP22G10K Potentiometer 3 1 USB-6008 4 1 National Instruments PCI-6014 Data Acquisition Cards

PAGE 167

151 Hydraulic Components Item No. Qty. Mfr. Part No. Description 1 2 26-50-0388-E Rotary hydraulic actuator (MPJ-11) 2 2 Micromatic 26-50-0400-E Rotary hydraulic actuator (MPJ-22) 3 1 RV08-20B-6T-N-33 Relief Valve 4 4 Hydraforce SP08-47CL-6T-N-24DS Prop. Dir. Control Valve 5 1 Vickers TK8VP-10-M-N-GF30-F1-B1-082 Vickers Hydraulic Power Unit 6 1 5092K57 Aluminum supply manifold 7 2 McMasterCarr 5092K13 Aluminum return manifold 8 Multiple Vendors Hydraulic Oil, Filter, Hose assemblies, Fitting adapters, Port plugs

PAGE 168

152 APPENDIX D MANUFACTURER SPECIFICATIONS FOR THE ELECTRO-HYDRAULIC CONTROL SYSTEM COMPONENTS 1. Dual Solenoid Amplifier Datasheet (Hydraforce, IL)

PAGE 169

153

PAGE 170

154

PAGE 171

155

PAGE 172

156

PAGE 173

157

PAGE 174

158

PAGE 175

159

PAGE 176

160 2. Electro-hydraulic proportional direc tional control valve (Hydraforce, IL)

PAGE 177

161

PAGE 178

162 3. PCI Data Acquisition Card (National Instruments, TX)

PAGE 179

163 4. USB Data Acquisition Card (National Instruments, TX)

PAGE 180

164

PAGE 181

165 5. Single Turn Rotary Potentiometer (ETI Systems, TX)

PAGE 182

166 APPENDIX E CONTROL PROGRAM // CitRoboDlg.cpp : implementation file /********************************************************************** Author: Babu Sivaraman Date Started: May 13, 2006 **********************************************************************/ //Include standard library files #include "stdafx.h" #include "windows.h" #include #include #include #include #include #include #include #include #include #include //Include header files #include "CitRobo.h" #include "CitRoboDlg.h" #include "./include/NIDAQmx.h" #include "./include/nidaqex.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif //Define variables int J0shutdown, J1shutdown, J2shutdown, J3shutdown; // flag for thread control int J0count = 0, J1count = 0, J2count = 0, J3count = 0; TaskHandle aiTaskHandle=0; // DAQ task handlers TaskHandle aoTaskHandleUsb=0; TaskHandle aoTaskHandlePci=0; float64 aiData[40], aoDataUsb[2], aoDataPci[2]; int32 read; vector ai0Volts, ai1Volts, ai2Volts, ai3Vo lts; // store data in C++ standard library container vector J0timeMS, J1timeMS, J2timeMS, J3timeMS; vector J0saveaoData, J1sav eaoData, J2saveaoData, J3saveaoData; int J0timeS = 0; int J1timeS = 0; int J2timeS = 0; int J3timeS = 0; char ai0str[10], ai1str[10], ai2str[10], ai3str[10]; // for on-screen display double J0des, J1des, J2des, J3des; // desired joint value in degrees double V0des, V1des, V2des, V3des; // desired voltage double V0cur, V1cur, V2cur, V3cur; // Voltage input from potentiometer double V0err, V1err, V2err, V3err; // error voltage double V0cmd, V1cmd; double V0daq, V1daq, V2daq, V3daq;

PAGE 183

167 /***************************************************/ /* "this" pointer to allow access to dialog controls on CCitRoboDlg class */ CCitRoboDlg* mine; /* Main thread functions ca lled in OnStartCapture() */ UINT J0WorkerThreadFunction(LPVOID pParam) { switch(J0shutdown) { case 0: { while (J0shutdown == 0) { Sleep(6); // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); /* This is where the input is updated on the dialog and stored for saving to file */ struct _timeb timebuffer; _ftime( &timebuffer ); J0timeS = timebuffer.millitm; // absolute millisecond value, need post-processing J0timeMS.push_back(J0timeS); // r ecord millisecond timestamp during potentiometer data capture ai0Volts.push_back(aiData[9]); // record ai0 voltage feedback from potentiometer mine->m_ai0 = aiData[9]; // on-screen data display sprintf(ai0str,"%f", (mine->m_ai0)*28.8492); // convert pot voltage to degrees mine->m_aci0.SetWindowText(ai0str); // DAQmx Stop Code DAQmxStopTask(aiTaskHandle); /* Logic to convert Pot value to controller value*/ if (fabs(V0err)>0.03466) { if (V0err>0) { V0cmd = -0.4990*V0err 6.9940; // scaling fr om pot value to level shifted command voltage to controller V0daq = -0.23326*V0cmd + 2.2685; // scali ng from level shifter to DAQ command voltage o/p if (V0daq > 5) { aoDataUsb[0] = 5; } else { aoDataUsb[0] = V0daq; } J0saveaoData.push_back(aoDataUsb[0]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHa ndleUsb,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); } else if (V0err<0) { V0cmd = -0.6080*V0err + 4.5290; V0daq = -0.22606*V0cmd + 2.3239; if (V0daq < 0) { aoDataUsb[0] = 0; } else { aoDataUsb[0] = V0daq; } J0saveaoData.push_back(aoDataUsb[0]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHa ndleUsb,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); } } else {

PAGE 184

168 aoDataUsb[0] = 2.3270; // Command voltage for valve null position J0saveaoData.push_back(aoDataUsb[0]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHa ndleUsb,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); DAQmxStartTask(aiTaskHandle); DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); mine->m_ai0 = aiData[9]; sprintf(ai0str,"%f", (mine->m_ai0)*28.8492); mine->m_aci0.SetWindowText(ai0str); DAQmxStopTask(aiTaskHandle); } J0count++; V0cur = mine->m_ai0; V0err = (V0des-V0cur); } // end while } case 1: { AfxEndThread(0,TRUE); // kill J0 thread } } return 0; } UINT J1WorkerThreadFunction(LPVOID pParam) { switch(J1shutdown) { case 0: { while (J1shutdown == 0) { Sleep(6); // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); /* This is where the input is updated on the dialog and stored for saving to file */ struct _timeb timebuffer; _ftime( &timebuffer ); J1timeS = timebuffer.millitm; // ab solute millisecond value, need post-processing J1timeMS.push_back(J1timeS); // record millisecond timestamp during potentiometer data capture ai1Volts.push_back(aiData[19]); // record ai0 voltage feedback from potentiometer mine->m_ai1 = aiData[19]; // on-screen data display sprintf(ai1str,"%f", (mine->m_ai1)*28.3166 20); // conve rt pot voltage to degrees and offset for joint limits mine->m_aci1.SetWindowText(ai1str); // DAQmx Stop Code DAQmxStopTask(aiTaskHandle); /* Logic to convert Pot value to controller value*/ if (fabs(V1err)>0.03531) { if (V1err>0) { V1cmd = -0.78071*V1err 6.3921; V1daq = -0.22436*V1cmd + 2.3660; if (V1daq < 0) { aoDataUsb[1] = 0; } else { aoDataUsb[1] = V1daq; } J1saveaoData.push_back(aoDataUsb[1]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHa ndleUsb,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); }

PAGE 185

169 else if (V1err<0) { V1cmd = -0.99285*V1err + 3.7990; V1daq = -0.22453*V1cmd + 2.3801; if (V1daq > 5) { aoDataUsb[1] = 5; } else { aoDataUsb[1] = V1daq; } J1saveaoData.push_back(aoDataUsb[1]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHa ndleUsb,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); } } else { aoDataUsb[1] = 2.375; // Command voltage for valve null position J1saveaoData.push_back(aoDataUsb[1]); DAQmxStartTask(aoTaskHandleUsb); DAQmxWriteAnalogF64(aoTaskHandl eUsb,1,1,10.0,DAQmx_Val_GroupByChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandleUsb); DAQmxStartTask(aiTaskHandle); DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQm x_Val_GroupByChannel,aiData,40,&read,NULL); mine->m_ai1 = aiData[19]; sprintf(ai1str,"%f", (mine->m_ai1)*28.3166 20); mine->m_aci1.SetWindowText(ai1str); DAQmxStopTask(aiTaskHandle); } J1count++; V1cur = mine->m_ai1; V1err = (V1des-V1cur); } // end while } case 1: { AfxEndThread(0,TRUE); // kill J1 thread } } return 0; } UINT J2WorkerThreadFunction(LPVOID pParam) { switch(J2shutdown) { case 0: { while (J2shutdown == 0) { Sleep(6); // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); /* This is where the input is updated on the dialog and stored for saving to file */ struct _timeb timebuffer; _ftime( &timebuffer ); J2timeS = timebuffer.millitm; // absolute millisecond value, need post-processing J2timeMS.push_back(J2timeS); // record millisecond timestamp during potentiometer data capture ai2Volts.push_back(aiData[29]); // record ai0 voltage feedback from potentiometer mine->m_ai2 = aiData[29]; // on-screen data display sprintf(ai2str,"%f", (mine->m_ai2) *28.6715); // convert pot voltage to degrees mine->m_aci2.SetWindowText(ai2str);

PAGE 186

170 // DAQmx Stop Code DAQmxStopTask(aiTaskHandle); /* Logic to convert Pot value to controller value */ if (fabs(V2err)>0.03487) { if (V2err>0) { V2daq = -0.90262*V2err-1.5; // direct calib ration from pot o/p to DAQ command voltage o/p if (V2daq < -10) { aoDataPci[0] = -10; } else { aoDataPci[0] = V2daq; } J2saveaoData.push_back(aoDataPci[0]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DAQmx_Val_GroupByChannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); } else if (V2err<0) { V2daq = -0.90262*V2err+1.5; if (V2daq > 10) { aoDataPci[0] = 10; } else { aoDataPci[0] = V2daq; } J2saveaoData.push_back(aoDataPci[0]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHa ndlePci,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); } } else { aoDataPci[0] = 0; J2saveaoData.push_back(aoDataPci[0]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHandl ePci,1,1,10.0,DAQmx_Val_GroupB yChannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStartTask(aiTaskHandle); DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); mine->m_ai2 = aiData[29]; sprintf(ai2str,"%f", (mine->m_ai2)*28.6715); mine->m_aci2.SetWindowText(ai2str); DAQmxStopTask(aiTaskHandle); } J2count++; V2cur = mine->m_ai2; V2err = (V2des-V2cur); } // end while } case 1: { AfxEndThread(0,TRUE); // kill J2 thread } } return 0; }

PAGE 187

171 UINT J3WorkerThreadFunction(LPVOID pParam) { switch(J3shutdown) { case 0: { while (J3shutdown == 0) { Sleep(6); // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQ mx_Val_GroupByChannel,aiData,40,&read,NULL); /* This is where the input is updated on the dialog and stored for saving to file */ struct _timeb timebuffer; _ftime( &timebuffer ); J3timeS = timebuffer.millitm; // absolute millisecond value, need post-processing J3timeMS.push_back(J3timeS); // record millisecond timestamp during potentiometer data capture ai3Volts.push_back(aiData[39]); // record ai0 voltage feedback from potentiometer mine->m_ai3 = aiData[39]; // on-screen data display sprintf(ai3str,"%f", (mine->m_ai3)*28. 5714); // convert pot voltage to degrees mine->m_aci3.SetWindowText(ai3str); // DAQmx Stop Code DAQmxStopTask(aiTaskHandle); /* Logic to convert Pot value to controller value */ if (fabs(V3err)>0.035) { if (V3err>0) { V3daq = -1.3492*V3err-1.5; // di rect calibration from pot o/p to DAQ command voltage o/p if (V3daq < -10) { aoDataPci[1] = -10; } else { aoDataPci[1] = V3daq; } J3saveaoData.push_back(aoDataPci[1]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DAQmx_Val_Gr oupByChannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); } else if (V3err<0) { V3daq = -1.3492*V3err+1.5; if (V3daq > 10) { aoDataPci[1] = 10; } else { aoDataPci[1] = V3daq; } J3saveaoData.push_back(aoDataPci[1]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHa ndlePci,1,1,10.0,DAQmx_Val_GroupByC hannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); } } else { aoDataPci[1] = 0; J3saveaoData.push_back(aoDataPci[1]); DAQmxStartTask(aoTaskHandlePci); DAQmxWriteAnalogF64(aoTaskHandl ePci,1,1,10.0,DAQmx_Val_GroupByC hannel,aoDataPci,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStartTask(aiTaskHandle); DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQm x_Val_GroupByChannel,aiData,40,&read,NULL);

PAGE 188

172 mine->m_ai3 = aiData[39]; sprintf(ai3str,"%f", (mine->m_ai3)*28.5714); mine->m_aci3.SetWindowText(ai3str); DAQmxStopTask(aiTaskHandle); } J3count++; V3cur = mine->m_ai3; V3err = (V3des-V3cur); } // end while } case 1: { AfxEndThread(0,TRUE); // kill J3 thread } } return 0; } /**************************************************************************************************/ // CAboutDlg dialog used for App About class CAboutDlg : public CDialog { public: CAboutDlg(); // Dialog Data //{{AFX_DATA(CAboutDlg) enum { IDD = IDD_ABOUTBOX }; //}}AFX_DATA // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAboutDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: //{{AFX_MSG(CAboutDlg) //}}AFX_MSG DECLARE_MESSAGE_MAP() }; CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { //{{AFX_DATA_INIT(CAboutDlg) //}}AFX_DATA_INIT } void CAboutDlg::DoDataExcha nge(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAboutDlg) //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) //{{AFX_MSG_MAP(CAboutDlg) // No message handlers //}}AFX_MSG_MAP END_MESSAGE_MAP() // CCitRoboDlg dialog CCitRoboDlg::CCitRoboDlg(CWnd* pParent /*=NULL*/) : CDialog(CCitRoboDlg::IDD, pParent) { //{{AFX_DATA_INIT(CCitRoboDlg)

PAGE 189

173 m_ai0 = 0.0; m_ai1 = 0.0; m_ai2 = 0.0; m_ai3 = 0.0; m_J3Value = _T(""); m_J2Value = _T(""); m_J1Value = _T(""); m_J0Value = _T(""); //}}AFX_DATA_INIT // Note that LoadIcon does not require a subsequent DestroyIcon in Win32 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } void CCitRoboDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CCitRoboDlg) DDX_Control(pDX, ID C_J0, m_J0Control); DDX_Control(pDX, ID C_J1, m_J1Control); DDX_Control(pDX, ID C_J2, m_J2Control); DDX_Control(pDX, ID C_J3, m_J3Control); DDX_Control(pDX, IDC_Ai3, m_aci3); DDX_Control(pDX, IDC_Ai2, m_aci2); DDX_Control(pDX, IDC_Ai1, m_aci1); DDX_Control(pDX, IDC_Ai0, m_aci0); DDX_Text(pDX, IDC_Ai0, m_ai0); DDX_Text(pDX, IDC_Ai1, m_ai1); DDX_Text(pDX, IDC_Ai2, m_ai2); DDX_Text(pDX, IDC_Ai3, m_ai3); DDX_CBString(pDX, IDC_J3, m_J3Value); DDX_CBString(pDX, IDC_J2, m_J2Value); DDX_CBString(pDX, IDC_J1, m_J1Value); DDX_CBString(pDX, IDC_J0, m_J0Value); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CCitRoboDlg, CDialog) //{{AFX_MSG_MAP(CCitRoboDlg) ON_WM_SYSCOMMAND() ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_BN_CLICKED(IDC_StartCapture, OnStartCapture) ON_BN_CLICKED(IDC_StopCapture, OnStopCapture) ON_BN_CLICKED(IDC_Home, OnHome) //}}AFX_MSG_MAP END_MESSAGE_MAP() // CCitRoboDlg message handlers BOOL CCitRoboDlg::OnInitDialog() { CDialog::OnInitDialog(); // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000); CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); }

PAGE 190

174 } // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon mine = this; // pointer to CCitRoboDlg class // DAQmx Configure Code DAQmxCreateTask("",&aiTaskHandle); DAQmxCreateAIVoltageChan(aiTaskHandle,"Dev2/ai0:3","", DAQmx_Val_Cfg_Default,0.0,10. 0,DAQmx_Val_Volts,NULL); // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQm x_Val_GroupByChannel,aiData,40,&read,NULL); /* Update input on the dialog */ mine->m_ai0 = aiData[9]; sprintf(ai0str,"%f", (mine->m_ai0)*28.8492); mine->m_aci0.SetWindowText(ai0str); mine->m_ai1 = aiData[19]; sprintf(ai1str,"%f", (mine->m_ai1)*28.3166 20); mine->m_aci1.SetWindowText(ai1str); mine->m_ai2 = aiData[29]; sprintf(ai2str,"%f", (mine->m_ai2)*28.6715); mine->m_aci2.SetWindowText(ai2str); mine->m_ai3 = aiData[39]; sprintf(ai3str,"%f", (mine->m_ai3)*28.5714); mine->m_aci3.SetWindowText(ai3str); // DAQmx Stop Code DAQmxStopTask(aiTaskHandle); // DAQmx Configure Code DAQmxCreateTask("",&aoTaskHandlePci); DAQmxCreateAOVoltageChan(aoTaskHandlePci,"De v1/ao0:1","",-10.0,10.0,DAQmx_Val_Volts,""); DAQmxCreateTask("",&aoTaskHandleUsb); DAQmxCreateAOVoltageChan(aoTaskHandleUsb,"Dev2/ao0:1","",0.0,5.0,DAQmx_Val_Volts,""); // DAQmx Start Code DAQmxStartTask(aoTaskHandlePci); DAQmxStartTask(aoTaskHandleUsb); /* Initialize joint values */ aoDataPci[0] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataPci[1] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataUsb[0] = 2.327; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); aoDataUsb[1] = 2.375; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStopTask(aoTaskHandleUsb); /* Range for Joint Control on Dialog */ CString J0str; for(int J0val=0; J0val<270; J0val++) { J0str.Format("%d",J0val); m_J0Control.InsertString(J0val,J0str); } CString J1str; for(int J1val=0; J1val<180; J1val++) { J1str.Format("%d",J1val); m_J1Control.InsertString(J1val,J1str); } CString J2str; for(int J2val=0; J2val<270; J2val++)

PAGE 191

175 { J2str.Format("%d",J2val); m_J2Control.InsertString(J2val,J2str); } CString J3str; for(int J3val=0; J3val<180; J3val++) { J3str.Format("%d",J3val); m_J3Control.InsertString(J3val,J3str); } return TRUE; // return TRUE unl ess you set the focus to a control } void CCitRoboDlg::OnSysCommand(UINT nID, LPARAM lParam) { if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysComm and(nID, lParam); } } // If you add a minimize button to your dialog, you will need the code below // to draw the icon. For MFC appli cations using the document/view model, // this is automatically done for you by the framework. void CCitRoboDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0); // Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() cxIcon + 1) / 2; int y = (rect.Height() cyIcon + 1) / 2; // Draw the icon dc.DrawIcon(x, y, m_hIcon); } else { CDialog::OnPaint(); } } // The system calls this to obtain the cu rsor to display while the user drags // the minimized window. HCURSOR CCitRoboDlg::OnQueryDragIcon() { return (HCURSOR) m_hIcon; } void CCitRoboDlg::OnStartCapture() { // Main thread function called here /* Value Selection for Joint Control on Dialog */ UpdateData(TRUE); int J0validate = m_J0Control.FindStringExact(0,m_J0Value); if(J0validate != -1)

PAGE 192

176 { J0des = m_J0Control.SetCurSel(J0validate); } UpdateData(FALSE); UpdateData(TRUE); int J1validate = m_J1Control.FindStringExact(0,m_J1Value); if(J1validate != -1) { J1des = m_J1Control.SetCurSel(J1validat e)+20; // to compensate for pot offset } UpdateData(FALSE); UpdateData(TRUE); int J2validate = m_J2Control.FindStringExact(0,m_J2Value); if(J2validate != -1) { J2des = m_J2Control.SetCurSel(J2validate); } UpdateData(FALSE); UpdateData(TRUE); int J3validate = m_J3Control.FindStringExact(0,m_J3Value); if(J3validate != -1) { J3des = m_J3Control.SetCurSel(J3validate); } UpdateData(FALSE); /* Conversion from user i/p in de grees to corresponding pot voltage */ V0des = J0des/28.8492; V1des = J1des/28.3166; V2des = J2des/28.6715; V3des = J3des/28.5714; // DAQmx Start Code DAQmxStartTask(aiTaskHandle); // DAQmx Read Code DAQmxReadAnalogF64(aiTaskHandle,10,10.0,DAQm x_Val_GroupByChannel,aiData,40,&read,NULL); /* Display current joint positions on dialog */ mine->m_ai0 = aiData[9]; sprintf(ai0str,"%f", (mine->m_ai0)*28.8492); mine->m_aci0.SetWindowText(ai0str); V0cur = mine->m_ai0; V0err = (V0des V0cur); // Calculate initial error mine->m_ai1 = aiData[19]; sprintf(ai1str,"%f", (mine->m_ai1)*28.3166); mine->m_aci1.SetWindowText(ai1str); V1cur = mine->m_ai1; V1err = (V1des V1cur); mine->m_ai2 = aiData[29]; sprintf(ai2str,"%f", (mine->m_ai2)*28.6715); mine->m_aci2.SetWindowText(ai2str); V2cur = mine->m_ai2; V2err = (V2des V2cur); mine->m_ai3 = aiData[39]; sprintf(ai3str,"%f", (mine->m_ai3)*28.5714); mine->m_aci3.SetWindowText(ai3str); V3cur = mine->m_ai3; V3err = (V3des V3cur); /* DAQmx Stop Code */ DAQmxStopTask(aiTaskHandle); /* Include code for do nothing (J()shutdown = 1) if no change in input and to hold position set flags!*/

PAGE 193

177 J0shutdown = 0; J1shutdown = 0; J2shutdown = 0; J3shutdown = 0; int q = 1; AfxBeginThread(J0WorkerThreadFunction,(LPVOID)q); // Activate Threads AfxBeginThread(J1WorkerThreadFunction,(LPVOID)q); AfxBeginThread(J2WorkerThreadFunction,(LPVOID)q); AfxBeginThread(J3WorkerThreadFunction,(LPVOID)q); } void CCitRoboDlg::OnOk() { J0shutdown = 1; // Stop Threads J1shutdown = 1; J2shutdown = 1; J3shutdown = 1; DAQmxStartTask(aoTaskHandlePci); DAQmxStartTask(aoTaskHandleUsb); aoDataPci[0] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataPci[1] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataUsb[0] = 2.327; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); aoDataUsb[1] = 2.375; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStopTask(aoTaskHandleUsb); } void CCitRoboDlg::OnCancel() { J0shutdown = 1; // Stop Threads J1shutdown = 1; J2shutdown = 1; J3shutdown = 1; DAQmxStartTask(aoTaskHandlePci); DAQmxStartTask(aoTaskHandleUsb); aoDataPci[0] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataPci[1] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataUsb[0] = 2.327; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); aoDataUsb[1] = 2.375; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStopTask(aoTaskHandleUsb); } void CCitRoboDlg::OnStopCapture() { J0shutdown = 1; // Stop Threads J1shutdown = 1; J2shutdown = 1; J3shutdown = 1; DAQmxStartTask(aoTaskHandlePci); DAQmxStartTask(aoTaskHandleUsb); aoDataPci[0] = 0;

PAGE 194

178 DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataPci[1] = 0; DAQmxWriteAnalogF64(aoTaskHandlePci,1,1,10.0,DA Qmx_Val_GroupByChannel,aoDataPci,NULL,NULL); aoDataUsb[0] = 2.327; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); aoDataUsb[1] = 2.375; DAQmxWriteAnalogF64(aoTaskHandleUsb,1,1,10.0,DAQ mx_Val_GroupByChannel,aoDataUsb,NULL,NULL); DAQmxStopTask(aoTaskHandlePci); DAQmxStopTask(aoTaskHandleUsb); /* Code to automate filename generation with datetimestamp */ /* time_t time_now = time(NULL); const tm* tm_now = localtime(&time_now); ostringstream fileai0; fileai0 << setfill('0') << setw(2) << "C:/Babu/aioutputs/ai0Vo lts " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J0saveaoData[0] << ".dat"; ofstream opfile1(fileai0.str().c_str()); ostringstream J0filetimeMS; J0filetimeMS << setfill('0') << setw(2) << "C:/Babu/aioutputs/J0tim eMS " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J0saveaoData[0] << ".dat"; ofstream opfile2(J0filetimeMS.str().c_str()); for (int i=0;itm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J1saveaoData[0] << ".dat"; ofstream opfile3(fileai1.str().c_str()); ostringstream J1filetimeMS; J1filetimeMS << setfill('0') << setw(2) << "C:/Babu/aioutputs/J1tim eMS " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J1saveaoData[0] << ".dat"; ofstream opfile4(J1filetimeMS.str().c_str()); for (int j=0;i
PAGE 195

179 opfile3 << ai1Volts[i] << endl; // write data to file opfile4 << J1timeMS[i] << endl; } opfile3.close(); opfile4.close(); ostringstream fileai2; fileai2 << setfill('0') << setw(2) << "C:/Babu/aioutputs/ai2Vo lts " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J2saveaoData[0] << ".dat"; ofstream opfile5(fileai2.str().c_str()); ostringstream J2filetimeMS; J2filetimeMS << setfill('0') << setw(2) << "C:/Babu/aioutputs/J2tim eMS " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J2saveaoData[0] << ".dat"; ofstream opfile6(J2filetimeMS.str().c_str()); for (int k=0;itm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J3saveaoData[0] << ".dat"; ofstream opfile7(fileai3.str().c_str()); ostringstream J3filetimeMS; J3filetimeMS << setfill('0') << setw(2) << "C:/Babu/aioutputs/J3tim eMS " << (tm_now->tm_mon+1) << '-' << setw(2) << tm_now->tm_mday << '-' << setw(2) << (tm_now->tm_year%100) << '-' << setw(2) << tm_now->tm_hour << '-' << setw(2) << tm_now->tm_min << '-' << "ao" << J3saveaoData[0] << ".dat"; ofstream opfile8(J3filetimeMS.str().c_str()); for (int l=0;i
PAGE 196

180 void CCitRoboDlg::OnHome() { // TODO: Add your control no tification handler code here // Move Joints to Home Position m_J0Value = 125; m_J1Value = 0; m_J2Value = 135; m_J3Value = 0; UpdateData(FALSE); CCitRoboDlg::OnStartCapture(); } Screenshot of user interface for joint mode control User command input for joint position Current joint position

PAGE 197

181 LIST OF REFERENCES Abdel-Malek, K., F. Adkins, H-J. Yeh, E. Haug. 1997. On the determination of boundaries to manipulator workspaces. Robotics and Computer Integrated Manufacturing 13(1): 63-72. Andeen, G. B., ed. 1988. Robot Design Handbook. New York, NY: McGraw-Hill. Angeles, J. 1997. Fundamentals of Robotic Mechanical Syst ems: Theory, Methods, and Algorithms. New York, NY: Springer-Verlag. Angeles, J., and C. S. Lopez-Cajun. 1992. Ki nematic isotropy and the conditioning index of serial manipulators. Intl. J. Robotics Research, 11(6): 560-571. Balerin, S., A. Bourely, and F. Sevila. 1991. M obile robotics applied to fruit harvesting: The case of greenhouse tomatoes. In Proc. 1991 Symposium Automated Agric. for the 21st Century, 236-244. St. Joseph, MI.: ASAE. Bowling, A., and O. Khatib. 2005. The dynamic capability equations: A new tool for analyzing robotic manipulator performance. IEEE Trans. Robotics 21(1): 115-123. Brown, G. K. 2002. Mechanical harvesting syst ems for the Florida citrus juice industry. ASAE Paper No. 021108. St. Joseph, MI.: ASAE. Buker, R. S., J. P. Syvertsen, J. K. Burns, F. M. Roka, W. M. Miller, M. Salyani, and G. K. Brown. 2004. Mechanical harvesting and tree health. Ex tension Digital Information Source (EDIS) HS 961. Gaines ville, FL.: Horticultural Sciences Department, University of Florida. Burks, T. F., F. Villegas, M. Hannan, S. Flood, B. Sivaraman, V. Subramanian, and J. Sikes. 2005. Engineering and horticultural aspects of robotic fruit harvesting: Opportunities and constraints. HortTechnology 15(1): 79-87. Cavalieri, S., and A. Plebe. 1996. Manipulator adaptive control by neur al networks in an orange picking robot. Intl. J. Neural Systems 7(6): 735-755. Ceres, R., J. L. Pons, A. R. Jimenez, J. M. Martin, and L. Calderon. 1998. Design and implementation of an aided fru it-harvesting robot (Agribot). Ind. Robot 25(5): 337346. Corke, P. I. 1996. A robotics toolbox for MATLAB. IEEE Robotics and Automation Magazine 3: 24-32.

PAGE 198

182 Craig, J. J. 1989. Introduction to Robotics: Mechanics and Control. 2nd ed. Reading, MA.: Addison-Wesley. Crane III, C. D., and Duffy, J. 1998. Kinematic Analysis of Robot Manipulators. New York, NY: Cambridge University Press. Crowder, R. M. 1988. The application and cont rol of brushless dc motors in high power robotic joints. In Proc. 3rd Intl. Conf. Power Electronics and Variable Speed Drives, 253-256. Piscataway, NJ: IEEE. Cundiff, J. S. 2002. Fluid Power Circuits and Controls : Fundamentals an d Applications. Boca Raton, FL: CRC Press. Doty, K. L., C. Melchiorri, E. M. Schwartz, and C. Bonivento. 1995. Robot manipulability. IEEE Trans. Robotics and Automation 11(3): 462-468. Edan, Y., and G. E. Miles. 1993. Design of an agricultural robot for harvesting melons. Trans. ASAE 36(2): 593-603. Edan, Y., and G. E. Miles. 1994. Systems engineering of agricultural robot design. IEEE Trans. Systems, Man, and Cybernetics 24 (8): 1259-1265. Edan, Y., D. Rogozin, T. Flash, and G. E. Miles. 2000. Robotic melon harvesting. IEEE Trans. Robotics and Automation 16(6): 831-835. Eismann, P. H., J. M. Thompson, Jr. 1996. Indus trial robot with servo. U.S. Patent No. 5581166. Erdman, A. G., and G. N. Sandor. 1984. Mechanism Design: Anal ysis and Synthesis. Englewood Cliffs, NJ: Prentice-Hall. Esposito, A. 1988. Fluid Power with Applications. 2nd ed. Englewood Cliffs, NJ: Prentice-Hall. FDOC (Florida Department of Citrus ). 2004. Citrus Reference Book 2004. Lakeland, FL.: Florida Department of Citrus. Flood, S. J., T. F. Burks, and A. A. Teixeira . 2006a. Physical properties of arranges in response to applied gripping forces fo r robotic harvesting. ASABE Paper No. 061142. St. Joseph, MI.: ASABE. Flood, S. J., T. F. Burks, and J. K. Schue ller. 2006b. Studies in the optimization of motion mechanics using a 7-DOF manipulator with a 6-axis force/torque sensor. ASABE Paper No. 063083. St. Joseph, MI.: ASABE. Fortuna, L., G. Muscato, G. Nunnari, A. Pandolfo, and A. Plebe. 1996. Application of neural control in agricultur e: An orange picking robot. Acta Horticulturae 406: 441-450.

PAGE 199

183 Goldenberg, A. A., N. M. Kircanski, P. Kuza n, J. A. Wiercienski, R. Hui, and C. Zhou. 1996. Modular, expandable and reconfigur able robot. U.S. Patent No. 5523662. Goldenberg, A. A., N. Kircanski, M. Kir canski, and A. Seshan. 2000. Reconfigurable modular joint and robots produced therefrom. U.S. Patent No. 6084373. Gosselin, C. M. 1990. Dexterity indices for plan ar and spatial robotic manipulators. In Proc. IEEE Intl. Conf. Robotics and Automation, 650-655. Piscataway, NJ: IEEE. Grand D’Esnon, A. 1985. Robotic harvesting of apples. In Proc. Agri-Mation, 1:210-214. St. Joseph, MI.: ASAE, Dearborn, MI.: SME. Grand D’Esnon, A., G. Rabatel, R. Pelle nc, A. Journeau, and M. J. Aldon. 1987. MAGALI: A self-propelled robot to pi ck apples. ASAE Paper No. 87-1037. St. Joseph, MI. Hannan, M. W., and T. F. Burks. 2004. Current developments in automated citrus harvesting. ASAE/CSAE Meeting Pape r No. 043087. St. Joseph, MI.: ASAE. Harrell, R. 1987. Economic analysis of r obotic citrus harvesting in Florida. Trans. ASAE 30(2):298-304. Harrell, R. C., P. D. Adsit, T. A. Pool, and R. Hoffman. 1988. The Florida robotic grove lab. ASAE Paper No. 88-1578. St. Joseph, MI. Juste, F., and F. Sevila. 1991. Citrus: An Eur opean project to study the robotic harvesting of oranges. In Proc. 2nd Workshop Robotics in Agriculture and the Food Industry, 187-195. Arlington, VA: IARP. Juste. F., I. Fornes, F. Pla, and F. Sev ila. 1992. An approach to robotic harvesting of citrus in Spain. In Proc. 7th Intl. Citrus Congress, 3: 1014-1018. Riverside, CA.: International Society of Citriculture. Juste, F., C. Gracia, E. Molto, R. Ibanez, and S. Castillo. 1988. Fr uit bearing zones and physical properties of citrus for mechanical harvesting. In Proc. 6th Intl. Citrus Congress, 1801-1809. R. Goren and K. Mendel, eds. Tel Aviv, Israel: Balaban Publishers. Kassay, L., and D. C. Slaughter. 1993. Electrica l, mechanical, and electronic problems with the Hungarian apple ha rvester robot during the 1992 fall field tests. ASAE Paper No. 933088. St. Joseph, MI.: ASAE. Kim, J.-O, and P. K. Khosla. 1991. Dexterit y measures for the de sign and control of manipulators. In Proc. IEEE/RSJ Intl. Workshop Intelligent Robots and Systems, 758-763. Piscataway, NJ: IEEE. Klein, C., and Blaho, B. 1987. Dexterity measures for the design and control of kinematically redundant manipulators. Intl. J. Robotics Research 6(2):72-83.

PAGE 200

184 Klema, V. C., and A. J. Laub. 1980. The singul ar value decomposition: Its computation and some applications. IEEE Trans. Automatic Control 25(2): 164-176. Kondo, N. 1995. Harvesting robot based on physical properties of grapevine. Japan Agricultural Research Quarterly (JARQ) 29(3): 171-177. Kondo, N. 1998. Chapter 4: Design a nd control of manipulators. In Robotics for Bioproduction Systems. 31-63. N. Kondo and K. C. Ting, eds. St. Joseph, MI.: ASAE. Kondo, N., M. Monta, and T. Fujiura. 1996a. Basi c constitution of a r obot for agricultural use. Advanced Robotics 10(4): 339-353. Kondo, N., Y. Nishitsuji, P.P. Ling, and K.C. Ting. 1996b. Visual feedback guided robotic cherry tomato harvesting. Trans. ASAE 39(6): 2331-2338. Kondo, N., T. Fujiura, M. Monta, and F. Sevila. 1998. Chapter 10: Robotics in bioproduction in open fields. In Robotics for Biopr oduction Systems, 231-274. N. Kondo and K. C. Ting, ed. St. Joseph, MI.: ASAE. Lee, J. 1997. A study on the manipulability measures for robot manipulators. In Proc. IEEE/RSJ Intl. Conf. Intelligent Robots and Systems, 3: 1458-1465. Piscataway, N.J.: IEEE. Lee, J., and K. T. Won. 1999. Inverse ki nematic solution based on decomposed manipulability. In Proc. IEEE Intl. Conf. Robotics and Automation, 2: 1514-1519. Piscataway, N.J.: IEEE. Lee, M., A. G. Erdman, and Y. Gutman. 1993. Kinematic/Kinetic performance analysis and synthesis measures of multi-DOF mechanisms. Mechanism and Machine Theory 28(5): 651-670. Merritt, H. E. 1967. Hydraulic Control Systems. New York, NY: John Wiley & Sons. Monta, M., N. Kondo, and Y. Shibano. 1995. Agricultural robot in grape production system. In Proc. 1995 IEEE Intl. Conf. Robotics and Automation, 2504-2509. Piscataway, NJ: IEEE. Muscato, G., M. Prestifilippo, N. Abbate, and I. Rizzuto. 2005. A prototype of an orange picking robot: past history, the ne w robot, and experimental results. Ind. Robot 32(2): 128-138. Nayar, H. D. 2002. Robotect: serial-link mani pulator design software for modeling, visualization and performance analysis. In Proc. 7th Intl. Conf. Control, Automation, Robotics and Vision, 3: 1359-1364. Piscataway, NJ: IEEE. Pai, D. K., and M. C. Leu. 1992. Genericity and singularities of robot manipulators. IEEE Trans. Robotics and Automation 8(5): 545-559

PAGE 201

185 Park, F. C., and R. W. Brockett. 1994. Ki nematic dexterity of robotic mechanism. Intl. J. Robotics Research 14(1): 1-15. Parrish, E. A., Jr., and A. K. Goksel. 1977. Pi ctorial pattern recognition applied to fruit harvesting. Trans. ASAE 20(5): 822-827. Pejsa, J., and J. E. Orrock 1983. Intellig ent robot systems: Po tential agricultural applications. In Proc. 1st Intl. Conf. Robotics and Intelligent Machines in Agric., 104-111. St. Joseph, MI.: ASAE. Pellenc, R., Montoya, J. L., Grand D’Es non, A., and Rombaut, M. 1990. Automated machine for detection and grasping of objects. U.S. Patent No. 4975016. Rabatel, G., A. Bourely, F. Sevila, and F. Juste. 1995. Robotic Harvesting of Citrus: State-of-art and development of the French Spanish Eureka project. In Proc. Intl. Conf. Harvest and Post harvest Technologi es for Fresh Fruits and Vegetables, 95: 232-239. St. Joseph, MI.: ASAE. Roka, F., and S. Longworth. 2001. Labor requ irements in Florida citrus. Extension Digital Information Source (EDIS) FE 304. Gainesville, FL.: Department of Food and Resource Economics, University of Florida. Rivin, E. I. 1987. Mechanical Design of Robots. New York, NY: McGraw-Hill. Rusconi, A., P. G. Magnani, T. Grasso, G. Rossi, J. F. Gonzalez Lodoso, and G. Magnani. 2004. DEXARM – a dexterous robot arm for space applications. In Proc. 8th ESA Workshop Advanced Space Tec hnologies for Robotics and Automation. Paper No. C-01. Noordwijk, The Netherlands: ESA. Sakai, S., M. Iida, and M. Umeda. 2002. Heavy material handling manipulator for agricultural robot. In Proc. 2002 IEEE Intl. Conf. Robotics and Automation, 10621068. Piscataway, NJ: IEEE. Sarig, Y. 1993. Robotics of Fruit Harves ting: A State-of-the-art Review. J. Agric. Eng. Research 54: 265-280. Schertz, C. E., and G. K. Brown. 1968. Basi c considerations in mechanizing citrus harvest. Trans. ASAE 11(2): 343-348. Schwartz, E. M., R. Manseur, and K. L. Doty. 2002. Noncommensurate systems in robotics. Intl. J. Robotics and Automation 17(2): Paper No. 206-2014. Shaik, M. A., and P. Datseris. 1986. A worksp ace optimization approach to manipulator linkage design. In Proc. IEEE Intl. Conf. Robotics and Automation, 75-81. Piscataway, NJ: IEEE. Singh, J. R., and J. Rastegar. 1995. Optimal synthesis of robot manipulators based on global kinematic parameters. Mechanism and Machine Theory 30(4): 569-580.

PAGE 202

186 Sivaraman, B., and T. F. Burks. 2006. Geomet ric performance indice s for analysis and synthesis of manipulators for robotic harvesting. Trans. ASABE 49(5): 1589-1597. Sivaraman, B., T. F. Burks, and J. K. Schue ller. 2006. Using modern robot synthesis and analysis tools for the design of agricultural manipulators. Agricultural Engineering International: The CIGR Ejournal. Invited Overview Paper No. 2, Vol. 8. Stocco, L., S. E. Salcudean, and F. Sassani. 1998. Matrix normaliza tion for optimal robot design. In Proc. IEEE Intl. Conf. Robotics and Automation, 2: 1346-1351. Piscataway, NJ.: IEEE. Tillett, N. D. 1993. Robotic manipul ators in horticulture: A review. J. Agric. Eng. Research 55(2): 89-105. Tsai, L-W. 1999. Robot Analysis: The Mechanics of Serial and Para llel Manipulators. New York, NY: John Wiley and Sons. Tutle, E. G. 1985. Robotic fruit harvester. U.S. Patent No. 4532757. Van Henten, E. J., J. Hemming, B. A. J. Van Tuijl, J. G. Kornet, J. Meuleman, J. Bontsema, and E. A. Van Os. 2002. An autonomous robot for harvesting cucumbers in greenhouses. Autonomous Robots 13: 241-258. Vittor, T. R., R. A. Willgoss, and T. Fu rukawa. 2003. Modular decentralized control of fruit picking redundant manipulator. In Proc. 2003 Australasian Conf. Robotics and Automation. Paper No. 26. J. Roberts and G. Wy eth, eds. Brisbane, Australia: ARAA. Watton, J. 1989. Fluid Power Systems: Modeli ng, Simulation, Analog, and Microcomputer Control. Englewood Cliffs, NJ: Prentice-Hall. Whitney, J. D. 1999. Field test results with mechanical harvesting equipment in Florida oranges. Applied Eng. in Agric. 15(3): 205-210. Yoshikawa, T. 1985. Manipulabili ty of robotic mechanisms. Intl. J. Robotics Research. 4(2):3-9. Yoshikawa, T. 1991. Translationa l and rotational mani pulability of robotic manipulators. In Proc. Intl. Conf. Ind. Electronics , Control, and Instrumentation, 2: 1170-1175. Piscataway, NJ.: IEEE.

PAGE 203

187 BIOGRAPHICAL SKETCH The author of this dissertation, Babu Sivaraman, was born on January 27, 1976, in Tiruchy, India. At an early age, he moved to live in the city of Madras, India. He was admitted into the engineering program at the University of Madras in August 1993 and received a Bachelor of Engineering degree wi th a mechanical engineering major in May 1997. He came to the United States of America for graduate education in the Fall of 1999 and joined the College of Engineering at the Un iversity of Florida (UF). At UF, he earned a Master of Science degree in mechani cal engineering in the Spring of 2002, and anticipates obtaining a Doctor of Philos ophy degree in agricultural and biological engineering along with a minor in electr ical engineering in the Fall of 2006.