ANALYSIS AND DESIGN OPTIMIZATION OF INPARALLEL HAPTIC DEVICES by LENG-FENG LEE DECEMBER 2010 A dissertation submitted to the Faculty of the Graduate School of the State University of New York at Buffalo in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY Department of Mechanical and Aerospace Engineering State University of New York at Buffalo Buffalo, New York 14260 To my family and friends Without whom, I am nothing ii Abstract The overall kinesthetic immersive experience in a haptic interactive virtual environment is the synthesis of the human user, the haptic user interface (HUI), and virtual environment (VE) – all of which playing critical roles. Our focus will be on the development of advanced HUIs for providing the users with sophisticated tactile or force feedback during interaction with virtual environments with innovative features including active and passive manipulation assists. Desirable features for high-performance HUIs include: human matched force capabilities, sizeable workspace, low inertia, high stiffness, low friction, back-drivability, near-zero backlash, and gravitational counterbalancing. Parallel-architecture haptic devices offer significant advantages over serialarchitecture counterparts in applications requiring high stiffness and high accuracy. To this end, many haptic devices have been created and deployed by modularly piecing together multiple serial-chain arms to form an in-parallel system. Furthermore, recent haptic device designs such as the Sensable‟s Phantom Premium line of haptic devices and Quanser‟s High Definition Haptic Device (HD)2 transfer the distal actuation to the base via a parallelogram/fourbar linkage in order to reduce the moving inertia in the system. However, such design choices can affect the overall system performance which now depends both on the nature of the individual arms as well as the interactions. The multiple closed-kinematic chains constrains effective degree-of-freedom and require careful selection of type, number, location and actuation of the individual articulations iii (within the chain) completes the determination of the workspace, mobility, controllability, and overall performance of the system. In this work, we build on the rich theoretical background of constrained articulated mechanical systems to provide a systematic framework for formulation of system-level performance from individual module characteristics. Specifically, we discuss: (i) development of pertinent symbolic equations; (ii) generalization to arbitrary architectures; and (iii) perform combined symbolic/numeric analyses, focusing on salient zeroth order (workspace), first order (manipulability), and second order (stiffness) kinematics performance measures. We demonstrated our studies using Sensable Phantom Premium line of haptic devices and Quanser‟s High Definition Haptic Device (HD)2. In particular, we highlight the effect of the added parallelogram sub-system to the overall system-level manipulability and stiffness measure. Finally, we note that traditional performance analysis on haptic devices focuses solely on the device. However, haptic devices are typically employed in close coupling with a human user creating a need to include their characteristics in the design and analysis. We therefore examined the use of a musculoskeletal analysis framework to study the performance of haptic devices, extracted biomechanically relevant performance measures from the human user, and use this to tailor the ergonomics and regimen within a rehabilitation program. iv Acknowledgment 三人行, 必有我师 When there are three people walking, my teacher is bound to be among them. -- Confucius The first paragraph in the Acknowledgement section in all dissertations you will ever read is reserved for their advisor. This is no exception. This journey begins 9 years ago when I knock on his office door and tell him I wanted to „do research‟. He opened the door and I never left. I would like to thank my advisor Professor Venkat Krovi. His guidance and encouragement have been invaluable throughout my undergraduate and graduate study. He helped me passed through some of the tough time as a friend, and enlightened me in the methods of scientific research as a researcher. He also sees my teaching „potential‟ and always recommends me whenever there a teaching opportunity in the department. I would also like to express my sincere thanks to Dr. Mayne and Dr. Soom for serving on my thesis committee. I „enjoyed‟ Dr. Mayne graphics programming class, and valued his encouragement, guidance, and especially the freedom in my teaching of two courses (MAE 377 Product Design in CAD Environment, and MAE477/577 CAD Applications) in the department. I was Dr. Soom class‟ TA once and he is the chair of the department when I first teach the MAE377 class. He has been very helpful and supportive throughout. Special thanks to Dr. Frank Mendel, whose sense of humor often v relief some of the pressure during those project meetings, for serving as the outside reader. I also like to thank Dr. John Rasmussen from Aalborg University, who invited me to visit his lab and company in Denmark for two weeks, working with the „AnyBuddies‟. It was a very unique experience. I also wish to thank Dr. Dargursh, who is the current department chair for attending my dissertation defense and offered numerous suggestions. I also appreciate the trust he had in me, in which he assigned me to teach a senior/graduate level course during my final semester with the department. Financially, this work is supported through NSF‟s Computer & Information Science & Engineering Computing Research Infrastructure (CRI) grant. Beside this, the teaching assistantship from the department of Mechanical & Aerospace Engineering is the major source of funding for most part of my graduate studies. I also like to thank Dr. Rajan Batta, from School of Engineering and Applied Science, who allocated some funding that allowed me to attend the „2010 North American Summer School in Surgical Robotics and Simulation‟ in Seattle. The „Future Faculty Program‟ initiated by Dr. Batta, is also a very valuable experience for me. I felt privillages and always appreciate the fact that I am funded throughout my graduate studies. Yes, as a graduate student, your friends are basically your labmate. For this reason, I would like to thank the current and previous (long-list of) members of ARM Lab: Rajan, Chin-Pei (CP), Seung Kook (SK), Pravin, Harpreet, Ajay, Daniel, Chris, Chetan, Annu, Talib, Glenn, Mike, Tao, Kiran, Chi-Han, Anand, Kun, Patrick, Hao, Qiushi, Yao, Madu, Srikanth, Xiaobo, John, Shajan, Sophie, and Vanina. Recent addition including Dan, Priyanshu, and Suren are also great to talk to. They are great colleagues, who made the vi lab so interactive and fun. I am sure we shared some great moments together, but forgive me for my short-term memory (or because I have been in the lab for too long), I cannot recall those moments now. Visiting scholars Ilya, from Russia and Luca, from Italy are fun to work with. I valued the friendship and encouragements from CP, friend I have known since day one of my undergraduate study long before we both came to the States. Xiaobo, who shared the same hobby as me were great friend inside and outside the lab. The long drive to Montreal attending conference is especially memorable. SK and his wife, especially their adorable 4 years old daughter Seo Young, and those never-seen-before Korean food, are great companion during the very stressful months preparing my dissertation. Being a graduate student and 10,000 miles away from home sometime also means your „friends‟ now existed only on the internet. So thanks to those „friends‟ who send couple of words over from time to time checking in on me by asking „have you graduated?‟. My long absent from home is not possible without the support from my parents, brother, and sister. Thanks for their trust in me. For the first time in many years, my answer to their most frequently asked question – „when are you going to graduate?‟ is finally not „hm… probably next year‟. Everyone who knows me well will probably agree that this long journey will not be possible without the company of my best friend/girlfriend Lye Theng. This has been an amazing journey so far for both of us, and its time to begin the next chapter of our lifelong journey. vii Contents Abstract .............................................................................................................................. iii Acknowledgment ................................................................................................................ v Contents ........................................................................................................................... viii List of Figures ................................................................................................................... xii List of Tables ............................................................................................................... xxviii 1 Introduction .............................................................................................. 1 1.1 Fundamental Issues at Core of Haptic Realism .................................................3 1.2 Problem Statement .............................................................................................5 1.3 Serial vs. Parallel Architecture Haptic Devices .................................................6 1.4 Contributions....................................................................................................11 1.5 Thesis Organization .........................................................................................12 2 Background ............................................................................................ 14 2.1 Parallel Architecture Manipulator....................................................................14 2.2 Parallel Architecture Manipulator Control ......................................................16 2.3 Virtual and Physical Prototyping Implementation ...........................................18 3 Technical Background ........................................................................... 20 3.1 Serial Manipulator Jacobian Formulation ........................................................21 3.1.1 Conventional Method..............................................................................21 3.1.2 Spatial Vector Formulation .....................................................................23 3.1.3 Twist based Jacobian Formulation..........................................................27 viii 3.1.4 3.2 3.3 Reciprocal Screws ...................................................................................36 Conventional Jacobian Formulation – Parallel Manipulator ...........................38 3.2.1 Method I ..................................................................................................40 3.2.2 Method II ................................................................................................42 3.2.3 Method III ...............................................................................................43 Jacobian Formulation for Parallel Systems......................................................44 3.3.1 4 System Jacobian Matrix of Parallelogram sub-system ...........................46 Performance Measures ........................................................................... 49 4.1 Background ......................................................................................................50 4.2 Zeroth Order Kinematic Performance Measure: Workspace...........................51 4.3 4.2.1 Workspace Computation .........................................................................54 4.2.2 Examples .................................................................................................57 First Order Kinematics Performance Measure: Manipulability.......................59 4.3.1 4.4 Second Order Kinematics Performance Measures: Stiffness ..........................71 4.4.1 4.5 Manipulability Formulation ....................................................................62 Stiffness Formulation ..............................................................................73 Chapter Summary ............................................................................................84 5 Serial-Architecture Haptic Devices ....................................................... 85 5.1 Parallelogram Sub-Structure ............................................................................85 5.1.1 5.2 Formulation of Planar Parallelogram Sub-System .................................88 Phantom 1.5 Haptic Device .............................................................................92 5.2.1 Workspace Analysis................................................................................94 5.2.2 Manipulability Measures ........................................................................96 ix 5.3 5.2.3 Isotropy Index .........................................................................................97 5.2.4 Stiffness Analysis..................................................................................100 Manipulability Optimization / Regulation .....................................................102 6 Parallel-Architecture Haptic Devices .................................................. 107 6.1 High Definition Haptic Device (HD2) ...........................................................107 6.2 Forward Kinematics .......................................................................................108 6.3 Numerical Inverse Kinematics .......................................................................111 6.4 Workspace Analysis.......................................................................................113 6.4.1 Constant Orientation Workspace ..........................................................113 6.4.2 Constant Orientation Spatial Workspace ..............................................116 6.5 Manipulability Measure .................................................................................119 6.6 Isotropy Index ................................................................................................122 6.7 Stiffness Measures .........................................................................................124 6.8 Trajectory Tracking .......................................................................................127 6.9 SimMechanics / MapleSim Model.................................................................129 6.10 Chapter Summary ..........................................................................................130 7 Musculoskeletal Analysis-based Performance Measures .................... 132 7.1 Haptic-based Virtual Rehabilitation Systems ................................................135 7.2 Critical Challenges .........................................................................................137 7.2.1 7.3 Computational Musculoskeletal Analysis Tools ..................................138 Performance Measures ...................................................................................143 7.3.1 Muscle Forces .......................................................................................144 7.3.2 Muscle Activity.....................................................................................144 x 7.4 Case Study: Haptic Motor Rehabilitation Programs ......................................146 7.4.1 7.5 8 Central Interface....................................................................................147 Musculoskeletal Models ................................................................................148 7.5.1 Parametric Studies ................................................................................150 7.5.2 Optimization Studies.............................................................................152 7.5.3 Discussion .............................................................................................154 Discussion and Future Work ................................................................ 156 8.1 List of Contributions ......................................................................................158 8.2 Future Work ...................................................................................................159 Bibliography ................................................................................................................... 161 Appendix A ..................................................................................................................... 179 A.1 Jacobian Formulation Example: Stanford Manipulator .................................179 A.2 Numerical Workspace Computation ..............................................................184 A.3 Workspace Computation Examples ...............................................................196 A.4 Manipulability of Parallel Systems ................................................................199 A.5 Stiffness Computation....................................................................................205 A.6 Workspace of HD2 .........................................................................................208 A.7 Inverse Kinematics of HD2 ............................................................................209 xi List of Figures Figure 1: Immersive and interactive rendering of “touch” in virtual environments depends in equal part on: (i) the human user‟s sensory abilities; (ii) the selected haptic user interface; and (iii) fidelity of computed virtual environment responses. .................... 1 Figure 2: The fundamental issues at the core of haptic realism are tied closely to complexity of Haptic User Interfaces and Haptic Modeling Fidelity. In this thesis, we focus on studying various Haptic User Interfaces. ................................................ 4 Figure 3: Typical tasks involved in a knee replacement surgery (a) drilling through bones; (b) hammering pins; (c) sawing through bones; and (d) suturing. .............................. 5 Figure 4: Examples of commercial haptic devices based on serial architecture................. 7 Figure 5: Examples of commercial haptic devices design based on parallel architecture. . 8 Figure 6: In-parallel haptic devices by modularly combining two or more serial architecture haptic devices. ....................................................................................... 10 Figure 7: Modularity creates design choices. The performance of the overall system depends on the nature of the individual module as well as their interactions........... 12 Figure 8: Using a 2-DOF RR manipulator as building block, many interesting haptic devices can be developed by modularly piecing the individual small system in different ways to create multi DOF haptic devices. .................................................. 14 Figure 9: Kinetostatic design optimization to improve both workspace volume and quality (stiffness, accuracy, velocity and force performance). ................................. 15 Figure 10: Rapid virtual and physical prototyping application developed for 5-DOF parallel haptic device. ............................................................................................... 18 Figure 11: Reference frames assignment for a RRR manipulator. ................................... 22 xii Figure 12: Homogeneous Transformation between two frames. ...................................... 28 Figure 13: Surface plot of isotropy index over the entire workspace of a two link RR manipulator computed using the Jacobian formulated using (top left) analytical method, (top right) spatial-twist expressed in {W } frame, (bottow left) spatial twist expressed in {F } frame, and (bottom right) body-fixed twist expressed in {E } frame. ................................................................................................................................... 35 Figure 14: Manipulability ellipsoid computed from Jacobian formulated using (a) spatial twist, expressed in {F} frame; (b) body-fixed twist, express in {E} ; and (c) spatial twist, expressed in {W} frame. ................................................................................. 36 Figure 15: Locations and directions of twists and wrenches of a three link RRR planar manipulator, red color arrows represent twists and blue color arrows represent wrenches. (a) Isometric view; and (b) top view of the manipulator. ........................ 38 Figure 16: Nomenclature of 3RRR planar manipulator used in the analysis. .................. 39 Figure 17: Closed-loop constraints selection for a parallel manipulator, reproduce from [62] ............................................................................................................................ 45 Figure 18: A planar RR manipulator system that consists of a parallelogram structure can be modeled as a constrained system consisting a RRR and a RR manipulator. ....... 47 Figure 19: Example of the computing the area of a circular planar workspace using contour and polyarea algorithm. ............................................................................... 55 Figure 20: Example of computing the volume workspace of a sphere using mesh generated from data points. ....................................................................................... 56 xiii Figure 21: Constant orientation workspace of a 2-RRR planar manipulator changes as the distance of their bases varied from (s) L 1.5 to (c) L 4.5 with end-effector orientation held at zero.............................................................................................. 57 Figure 22: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L 0.5 to L zero. Largest workspace exist when L 1.7321 . ....................................................... 58 4.5 with end-effector angle held at Figure 23: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L 0.5 to L 4.5 with end-effector angle held at 45 . Largest workspace no longer exist at L 1.7321 . ....................................... 58 Figure 24: Constant orientation workspace of a 4-RRR planar manipulator changes as the distance of their bases varied from L 2 to L 3.25 with end-effector angle held at zero............................................................................................................................ 58 Figure 25: Velocity and force manipulability ellipsoid of a planar two link serial RR manipulator at various locations. .............................................................................. 59 Figure 26: An example of a manipulability ellipsoid. ...................................................... 63 Figure 27: Manipulability ellipsoid of a five-bar manipulator with two different actuated joints compared with (a) result obtained from [119], (b) five-bar with both 1st joint actuated; and (c) five-bar with both 2nd joint actuated. ............................................. 66 Figure 28: Manipulability ellipsoid of a six-bar manipulator with two different actuation schemes compared with (a) results reproduced from [119], (b) six-bar with 1st and 2nd joint of the left chain actuated; and (c) six-bar with both 1st and 2nd joint of the right chain actuated. .................................................................................................. 66 xiv Figure 29: Five-bar systems manipulability ellipsoid at two singular positions (top and bottom) with two actuation schemes: (a) both actuated joints located at the 1st joint; and (b) both actuated joints located at the 2nd joint. ................................................. 67 Figure 30: Six-bar system manipulability ellipsoid at singular position. ......................... 67 Figure 31: For the same end-effector position and angle, manipulability ellipsoid can be different due to inverse solution of each RRR chain. ............................................... 68 Figure 32: Isotropy index/ Inverse of condition number over the entire workspace of a 3RRR parallel manipulator changes for two selected inverse kinematics configurations. .......................................................................................................... 69 Figure 33: Manipulability ellipsoid changes as well as workspace as configuration changes. ..................................................................................................................... 69 Figure 34: Comparison of Isotropy index / Inverse of condition number for a (a) 2-RRR, (b) 3-RRR, and (c) 4-RRR system at selected configuration.................................... 70 Figure 35: Stiffness Ellipsoid of a two link RR manipulator as the two joint stiffness constants k1, k2 varied from k1 0.1, k2 0.9 to k1 0.9, k2 0.1 from (a) to (i). ...... 75 Figure 36: Stiffness maps of the 3-RPR manipulator in the (a) direction; and (c) y –direction with –direction; (b) x – 0 . Comparing result with comparing results with [143] (top row). ................................................................................................. 76 Figure 37: Stiffness maps of 3RRR manipulator in the (a) x-direction, (b) y- direction, and (c) – direction, with end effector angle 0 . Comparing result with [153] (bottom row). ............................................................................................................ 77 xv Figure 38: Comparison of the stiffness map of a 3-RRR manipulator in x-direction (2nd row), y-direction (3rd row), and -direction (4th row) with different joints actuated: (a) 3-RRR; (b) 3-RRR; and (c) 3-RRR manipulator. End-effector angle 0 . .... 78 Figure 39: With the modular formulation that we have shown, we can look at how adding an additional chain to the 3-RRR system (shown in (s)), now forms a 4-RRR system (as shown in (b)) changes the overall stiffness of the system. .................................. 79 Figure 40: The stiffness map in the (a) x-direction, (b) y-direction, and (c) -direction of a 3-RRR system described in Figure 39(a) (top row), and the stiffness map after adding another chain (bottom row), the 4-RRR system shown in Figure 39(b). ...... 80 Figure 41: (a) A 4-RRR planar parallel manipulator with only three chains actuated (the top left chain is passive); compare with (b) a 3-RRR planar parallel manipulator with same link lengths and locations as the 4-RRR manipulator, but with all chains actuated. Shown here with their corresponding constant orientation workspace. .... 81 Figure 42: The stiffness map of a 4-RRR planar parallel manipulator with only three chains actuated (top row), compare with a 3-RRR planar parallel manipulator (bottom row): (a) x-direction, (b) y-direction, and (c) -direction stiffness. ........... 82 Figure 43: Comparison of stiffness map of a (a) 2-RRR, (b) 3-RRR, and (4) 4-RRR manipulator in x-direction (2nd row), y-direction (3rd row), and with end-effector orientation -direction (4th row) 0 . ......................................................................... 83 Figure 44: Examples of commercial haptic devices with parallelogram sub-system within their kinematic chains. .............................................................................................. 86 xvi Figure 45: Using PHANToM 1.5 system as a design block, various types of in-parallel haptic devices can be design by combining them in different ways. Note that device with „?‟ on the side is not a currently available haptic device. ................................. 87 Figure 46: (a) A mechanism with parallelogram structure can be modeled as a combination of a RRR manipulator with another RR manipulator. (b) The manipulability ellipsoid of the combined system is shown with the manipulability of individual RR and RRR manipulator (assuming all joints actuated). ....................... 89 Figure 47: Comparison of parallelogram structure manipulability ellipsoid formulation with a five-bar mechanism: (a) and (c) is the parallelogram structure where the last link is zero, and (b) and (d) is the five-bar mechanism. ........................................... 90 Figure 48: (a) Surface plot of isotropy index of RR linkage with parallelogram structure, RR manipulator, and RRR manipulator for comparison. The contour plot of each of their isotropy index is given in (b) for RR linkage with parallelogram structure; (c) for RR Manipulator and (d) for RRR manipulator. .................................................. 91 Figure 49: The parallelogram structure in the Phantom 1.5 system modeled as combination of one (a) spatial RR manipulator with another (b) spatial RRR manipulator. D-H parameters of both systems are given in Table 2 and Table 3 .... 92 Figure 50: (a) The reachable workspace of PHANToM 1.5 haptic device is about 0.08m3, (b), (c), (d) are side view, top view, and front view of the workspace along with the haptic device. ............................................................................................................ 95 Figure 51: 3D view of the manipulability ellipsoid of Phantom 1.5 system, compared with the manipulability ellipsoid of a spatial RR system (without the parallelogram sub-system). .............................................................................................................. 96 xvii Figure 52: With the addition of the parallelogram linkages, the manipulability ellipsoid of the Phantom 1.5 system at x = (a) 1.5; (b) 2.5, and (c) 3.5, compared with the manipulability ellipsoid of a spatial RR system. In all these cases, the sizes of the manipulability ellipsoids were scaled to half of its actual size. ................................ 97 Figure 53: Isotropy Index of (a) a PHANToM 1.5 system compared to a (b) spatial RR manipulator over the entire workspace on the x-z plane (y = 0). ............................. 98 Figure 54: (a) Isotropy index of Phantom 1.5 plotted against a spatial RR manipulator. The (b) maximum and average isotropy index of Phantom 1.5 is 0.7907 and 0.5353; and (c) the maximum and average isotropy index of a spatial RR manipulator is 0.8541 and 0.3939, over the workspace. ................................................................... 99 Figure 55: Stiffness maps of spatial RR system in the (a) x direction; (b) y direction; and (c) z x direction, compare with stiffness map of PHANToM 1.5 in the (d) direction; (e) y direction; and (f) z direction, on the x z plane ( y 0 ). .. 101 Figure 56: Comparison of stiffness map of PHANToM 1.5 system with a spatial RR system in the (a) x-direction; (b) y-direction; and (c) z-direction. The addition of parallelogram structure reduces the overall stiffness in the system but at the same time allow a more uniform stiffness distribution. ................................................... 102 Figure 57: Manipulability ellipsoid (in blue color) of Phantom 1.5, (a) – (c) side view, and (d)- (f) isometric view. The size of the parallelogram does not change the magnitude or the direction of the manipulability ellipsoid. .................................... 103 Figure 58: Study the effect of the parallelogram structure by replacing it with a fourbar linkage. .................................................................................................................... 103 xviii Figure 59: The manipulability of the PHANToM 1.5 system changes with varying length of L3a from (a) L3a 0.8 ; (b) L3a 1.2 ; to (c) L3a 1.45 . ........................................ 104 Figure 60: (a) Result of optimization to improve the isotropy index of the selected region shown in (b). The contour plots of the original and optimized isotropy index are given in (c) and (d). ................................................................................................. 106 Figure 61: (a) Actual High Definition Haptic Device (HD)2 system; and (b) CAD model created in SolidWorks. ............................................................................................ 107 Figure 62: The HD2 Haptic Device and DH Frames assignment on the upper arm. ...... 108 Figure 63: Passive attachment (via universal joint and revolute joint) of the serial-chain‟s end-effector to the common handle. ....................................................................... 109 Figure 64: DH frame assignment of the „inner chain‟ of HD2, to include the parallelogram structure in the formulation. .................................................................................... 110 Figure 65: (a) The end effector position trajectory to be solve numerically; (b) the root mean square error of the actual position and solutions obtained using inverse solution; (c) the angles in the upper chain and (d) angles in the lower chain obtained from the numerical inverse computation. ............................................................... 111 Figure 66: The end effector position points to be solve numerically; (b) the root mean square error of the actual position and solutions obtained using inverse solution; (c) the angles in the upper chain and (d) angles in the lower chain obtained from the numerical inverse computation. .............................................................................. 113 Figure 67: The circular arcs that describe the constant orientation workspace boundaries of the HD2 device at 1 1' 0 can be identified with circular arc equations (with radius and range of angle) for this position. .................................................. 114 xix Figure 68: Isometric view of the constant orientation workspace of the HD2 haptic device (handle is held vertically) at various heights. ......................................................... 115 Figure 69: Constant orientation workspace of HD2 shown with (a) side view; (b) front view; (c) top view, and (d) isometric view. At this orientation, the minimum and maximum reachable distance is from 0.08m to 0.56m in the x-direction, -0.66m to 0.42m in the y-direction, and 0.08m to 0.61m in the z-direction. The workspace volume is computed to be 0.956m3. ........................................................................ 116 Figure 70: (a) a biopsy needle were attached to the handle of the HD2 haptic device performing virtual biopsy training; and (b) the corresponding constant orientation of the HD2 handle that approximate the needle angle that is being used for workspace study. ....................................................................................................................... 117 Figure 71: The constant orientation workspace of the HD2 haptic reduced to about 0.76m3 when the handle is held at an angle approximating the biopsy needle insertion angle (-30 degree in the x-axis). Shown here (a) and (b) are two different view angles of the resulting workspace........................................................................................... 118 Figure 72: The constant orientation workspace of the HD2 haptic further reduced to about 0.51m3 when the handle is held at an rotated angle of -60 degree along the x-axis. Shown here are (a) isometric view and (b) front view of the resulting workspace. More views are presented in the Appendix............................................................. 118 Figure 73: Scaled manipulability ellipsoid of (HD)2 shown in (a) isometric view; (b) front view; (c) top view; and (d) side view...................................................................... 119 Figure 74: With the inclusion of parallelogram structure, the manipulability ellipsoid changes considerably for the HD2 haptic device. ................................................... 120 xx Figure 75: Comparison of manipulability ellipsoids of HD2 haptic device with endeffector positioned at (2.5, 0, 3.44), modeled with (in blue color) and without (in yellow color) the parallelogram structure at various view (a) front view; (b) side view; (c) top view; and (d) Isometric view. ............................................................ 121 Figure 76: Comparison of manipulability ellipsoids of HD2 haptic device with endeffector positioned at (2.8, 2, 3.44) and tilted 60 deg along the x-axis, modeled with (in blue color) and without (in yellow color) the parallelogram structure at various view (a) front view; (b) side view; (c) top view; and (d) Isometric view. .............. 122 Figure 77: Inverse condition number/ Isotropy index of HD2 haptic (a) with and (b) without including the parallelogram structure in the Jacobian formulation, evaluated at plane z=0.344m and the handle is held vertically. (c) Although the condition number without the parallelogram structure is better (higher number), the isotropy index with the addition of parallelogram structure is more uniform throughout the workspace. .............................................................................................................. 123 Figure 78: Stiffness of (HD)2 in each directions, with formulation without considering the parallelogram structure in the upper and lower linkages. ....................................... 125 Figure 79: Stiffness of (HD)2 in each directions, with formulation including the parallelogram structure in the upper and lower linkages. ....................................... 126 Figure 80: (a) The trajectory tracking result shows the desired path and the traced path; (b) show the HD2 tracking the trajectory; (c) angle profile of all the joints in the system; and (d) the length of the handle throughout the trajectory tracking show the position and angular constraints were satisfied. ................................................................... 128 xxi Figure 81: Hardware-in-the-loop (HIL) design and testing framework of the HD2 haptic device. ..................................................................................................................... 129 Figure 83: SimMechanics model of HD2 haptic device with its corresponding VRML model for visualization. .......................................................................................... 130 Figure 84: (a) MapleSim model of the HD2 haptic device with its corresponding 3D visualization model. ................................................................................................ 130 Figure 85: When a human user holding on a haptic device, a geometric loop-constraint between them and the bi-directional transmission of forces and moments create challenges to evaluate the performance of the combined human-device interactions. ................................................................................................................................. 132 Figure 86: (a) A simple planar human kinematic model created to include human user in optimizing the haptic device workspace, given in [174-175]; and (b) Collision avoidance and motion planning by modeling both the human and haptic device as linkages, given in [173]........................................................................................... 134 Figure 87: Example of haptic rehabilitation devices:(a) the MIT-MANUS for upper-body function rehabilitation after stroke, developed in MIT [207]; (b) the “Rutgers Ankle” Rehabilitation Interface for ankle rehabilitation developed in Rutgers University [208]; and (c) The haptic rehabilitation device for upper-limb motor function rehabilitation developed in Shibaura Institute of Technology [209]. ..................... 136 Figure 88: Examples of adjustable, reconfigurable rehabilitation exercise machines from BIODEX: (a) Upper Body Cycle; (b) System 4, and (c) BioStep Clinical Pro. ..... 136 Figure 89: (a) AnyBody musculoskeletal modeling environment [202]; and (b) OpenSim open source software system interface [215]. ......................................................... 138 xxii Figure 90: Systematic and parametric musculoskeletal analysis based study can be used to better understand bipedal walking frequency [200]. .......................................... 141 Figure 91: (a) Parametric bicep curl study on a simplified upper-arm/shoulder musculoskeletal model and muscle force profiles for both (b) biceps short and (c) biceps long muscles. ............................................................................................... 142 Figure 92: Right muscle activity profile (solid) and average muscle activity (dashed) for one pendulum swing cycle used in [200]. ............................................................... 145 Figure 93: (a) the actual setup that is being modeled and studied[212]; (b) Front view of the user and driving wheel (rehabilitation device) arrangement in the case study; and (c) the corresponding top view of the same arrangement. ...................................... 146 Figure 94: Paradigm of our framework for VP of rehabilitation device: A MATLAB GUI that serves as the Center Interface that allows the therapist to examine the effects of different regimen and determines the „best‟ regimen based on user‟s geometric information. The AnyBody engine is responsible for the computation of the muscle forces, while the optimization routine is handle using MATLAB‟s optimization toolbox. ................................................................................................................... 148 Figure 95: The human musculoskeletal model, the rehabilitation device, and their interaction used in the case study were modeled using AnyBody Modeling System. Shown here is the (a) Side view and (b) Front view of the model.......................... 149 Figure 96: (a)-(d) The hand placement on the steering wheel at different time instant in the parametric study, view from the top of the virtual model. (a) The initial position; (b)-(c) the intermediate positions; and (d) the final position. ................................. 150 xxiii Figure 97: (a) Surface and (b) 2D plot of the maximum combine muscles force for a patient to turn a wheel at a constant angular velocity of 30deg/sec (with 330 deg total movement), for a 0 to 60 degree tilted wheel angle, with wheel center located at (0.25, -0.1, 0.25), measured in meters. .................................................................. 151 Figure 98: (a) Surface and (b) 2D plot of the maximum combine doing the same motion, this time with 0 deg tilted angle (no tilt) , for wheel x position varied from 0.1m to 0.45m (far or close in front of the user). ................................................................ 152 Figure 99: (a) Function space of maximum combined muscle forces fluctuation as the objective function and steering wheel‟s x location and tilt angle as the design variables; and (b) Function space of average muscle force as the objective function and steering wheel‟s x location and wheel‟s tilt angle as the design variables. ..... 153 Figure 100: Stanford Manipulator, a R-R-P-R-R-R serial manipulator and its D-H frame assignment............................................................................................................... 179 Figure 101: (a) raw data points; (b) interior points are filtered; (c) the boundary points are not arranged sequentially around the boundary; (d) re-ordered points sequentially envelop the boundary. ............................................................................................. 186 Figure 102: (a) Surface plot that represent the workspace; (b) Contour at specific level can be generated; (c) the workspace boundary point extracted from the contour plot. ................................................................................................................................. 186 Figure 103: Process of computing area using Algorithm 1. (a) shows the original data points that are inside the workspace; (b) the filtered and re-organized boundary data points; and (c) the area computed using these data point using polyarea algorithm, xxiv for grid size 0.1. (d)-(f) shows the same process for data points generated with grid size 0.01. ................................................................................................................. 189 Figure 104: Process of computing area using Algorithm 2. (a) shows the surface plot of points that are inside the workspace; (b) the level at which each contour can be generated, and subsequently points can be extracted; and (c) the area computed using these data point using polyarea algorithm, for grid size 0.1. (d)-(f) shows the same process for data points generated with grid size 0.01. ................................... 190 Figure 105: Percent difference of estimating workspace area from actual workspace at different contour levels (from 0 to 1.0, with increment of 0.1), for grid size of 0.1, 0.05, and 0.01. The horizontal line represents perfect estimation. ......................... 191 Figure 106: (a)-(e) Raw data points representing the constant orientation workspace of HD2 haptic device computed using Algorithm 1 at grid size 0.2, 0.1, 0.05 and 0.02; and (f)-(i)their corresponding workspace evaluated using the filtered and reorganized boundary points. ..................................................................................... 193 Figure 107: (a)-(d)Constant orientation workspace of HD2 haptic device computed using Algorithm 2 at grid size 0.2, 0.1, 0.05 and 0.02; and (e)-(g) their corresponding workspace area computed with contour evaluated at level 0.5. .............................. 194 Figure 108: Workspace area approximation with Algorithm 2 evaluated at various contour levels, with grid size of 0.02, 0.05 and 0.1. Workspace area approximated with Algorithm 1 also plotted for the same grid sizes for comparison. .................. 195 Figure 109: Constant orientation workspace of a 2-RRR planar manipulator changes as the distance of their bases varied from (s) L 1.5 to (f) L 4.5 with end-effector angle held at zero. ................................................................................................... 196 xxv Figure 110: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L held at zero. Largest workspace exist when L 0.5 to L 4.5 with end-effector angle 1.7321 . ......................................... 197 Figure 111: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L held at 0.5 to L 45 . Largest workspace no longer exist at L 4.5 with end-effector angle 1.7321 . ......................... 198 Figure 112: Constant orientation workspace of a 4-RRR planar manipulator changes as the distance of their bases varied from L 2 to L 3.25 with end-effector angle held at zero. ..................................................................................................................... 199 Figure 113: Manipulability ellipsoid of a Five-bar manipulator with two different actuated joints compared with the result obtained from [119], at three different end effector locations (a), (b) and (c). ........................................................................... 200 Figure 114: Manipulability ellipsoid of a Six-bar manipulator with two different actuation schemes compared with the result obtained from [119], at three different end effector locations (a), (b) and (c). ........................................................................... 201 Figure 115: For the same end-effector position and angle, manipulability ellipsoid can be different due to inverse solution of each RRR chain. ............................................. 202 Figure 116: Inverse of Condition Number map across the workspace of a 3RRR parallel manipulator changes for different configurations. .................................................. 203 Figure 117: Manipulability elliposoid changes as well as workspace as configuration changes. ................................................................................................................... 204 Figure 118: Stiffness maps of the 3-RPR manipulator in the (a) direction; and (c) y –direction with –direction; (b) x – 0 , (d), (e), and (f) are stiffness map with xxvi end-effector angle 90 . Comparing result with comparing results with [143] (top row). ........................................................................................................................ 205 Figure 119: Stiffness maps of 3RRR manipulator in the (a) x-direction, (b) y- direction, and (c) – direction, with end effector angle map with end-effector angle 0 . (d), (e), and (f) are stiffness 90 . Comparing result with [153] (bottom row). 206 Figure 120: Comparison of the stiffness map of a 3-RRR manipulator in x-direction (2nd row), y-direction (3rd row), and -direction (4th row) with different joints actuated: (a) 3-RRR; (b) 3-RRR; and (c) 3-RRR manipulator. End-effector angle 45 . . 207 Figure 121: Constant orientation workspace of (HD)2 at various heights: (a) isometric view; (b) side view; and (c) front view. .................................................................. 208 Figure 122: The constant orientation workspace of the HD2 haptice further reduced to about 0.51m3 when the handle is held at an rotated angle of 60 degree along the xaxi. Shown here are two different view angles of the resulting workspace. ........... 209 xxvii List of Tables Table 1: Table summarizing the Jacobian matrix formulated using various methods. .... 34 Table 2: Geometric Parameters for Phantom 1.5 .............................................................. 92 Table 3: Geometric Parameters for the Parallelogram sub-system in Phantom 1.5 ......... 92 Table 4: Measured joint limits of the PHANToM 1.5 haptic system. .............................. 93 Table 5: DH Frame assignment of the upper chain of HD2. ........................................... 109 Table 6: DH frame assignment of the upper chain of HD2, included the parallelogram sub-system............................................................................................................... 109 Table 7: Measured joint limits for the HD2 haptic device. ............................................. 114 Table 8: DH Frame assignment for Stanford manipulator.............................................. 180 Table 9: Comparison of computation time and number of boundary points generated in each of the two algorithms, for various grid size. ................................................... 187 Table 10: Comparison of computed are and % difference with actual area at various grid size, in each of the two algorithms.......................................................................... 188 Table 11: Measured joint limits for the HD2 haptic device. ........................................... 192 Table 12: Comparison of computation time and number of boundary points generated in each of the two algorithms, for various grid size used in estimating the constant orientation workspace of HD2. ................................................................................ 195 xxviii 1 Introduction Haptic Immersive Virtual Environments (HIVE) hold considerable promise for ability to expand, assist, train and monitor human sensorimotor capabilities, for improving physical strength, redirecting undesirable motions and forces, augmenting the manual precision, and improving overall dexterity. Figure 1: Immersive and interactive rendering of ‚touch‛ in virtual environments depends in equal part on: (i) the human user’s sensory abilities; (ii) the selected haptic user interface; and (iii) fidelity of computed virtual environment responses. The overall kinesthetic immersive experience in a haptic interactive virtual environment is the synthesis of the human user, the haptic user interface (HUI), and virtual environment (VE) – all of which playing critical roles. The virtual environment refers to the computer-based model, capable of interactively generating cues for immersion of multiple senses of the user. While early VEs were restricted to generation 1 of visual and auditory cues, contemporary VEs have been extended (using “haptic models”) to encompass the generation of kinesthetic cues. The HUI is to denote the computer-controlled electro-mechanical system (“haptic device”), the feedback control laws (“haptic control laws”), as well as all the intermediate elements (A/D, D/A, conditioning electronics) that help interface the motions and forces between the human operator and the virtual environment. The effectiveness of the interface – in communicating human-user intent to the virtual environment and rendering of results back to the users - can be judged using performance benchmarks such as the fidelity, transparency, stability, accuracy, and real-time interactivity. The differences from the traditional paradigm of human-computer interaction arise due to: (i) the far higher bandwidth of kinesthetic and tactile perception (over 1000Hz vs. the 30Hz for visual perception); and (ii) the bi-directional exchange of information and energy occurring at the kinesthetic user interface. These requirements come at significant computational cost and often conflict with the requirement for maintaining real-time interactivity and overall system stability. Critical tradeoffs, in terms of bandwidth, fidelity and accuracy, are required for development of “suitable haptic models” for generating responses to dynamic user interactions with the virtual world as well as “suitable haptic interfaces” to render the resulting computation without attenuation or interference. It is noteworthy that despite the obvious benefits and availability of several commercial simulators, this approach has yet to become mainstream. The limited capability for sensorimotor “realism” offers a serious obstacle for successful implementation of simulation-based learning. Significant technical challenges, in terms 2 of limits on quality, immersivity, intuitiveness, and realism of visual and haptic simulation need to be overcome before today„s Haptic UIs pass the haptic “Turing Test”. 1.1 Fundamental Issues at Core of Haptic Realism In order to realize the full set of benefits, further basic research is required in the areas of optimal designs and advanced control algorithms for (i) advanced haptic user interfaces; (ii) algorithm and architectures for physics based high performance distributed computation of the graphic and haptic rendering; and (iii) assessment of simulator validity, suitable user interface design and automated user-evaluation methods as shown in Figure 4. Among these our focus will be on the development of Advanced Haptic User Interfaces. Haptic User Interface (HUI) devices offer potential for providing the users with sophisticated tactile or force feedback during interaction with virtual environments with innovative features including active and passive manipulation assist. However, realizing these benefits requires the HUI be able to generate and render a wide range of high fidelity dynamic behavior. Hence as electro – mechanically actuated articulated mechanical systems, high-performance HUI should possess: human matched force capabilities, sizeable workspace, low inertia, high stiffness, low friction, back-drivability, near-zero backlash, and gravitational counterbalancing,. Particular stress is place on the transparency of the device so that the HUI does not distort the reflected forces/torques by its electro-mechanical characteristics. To this end, we are proposing to design, develop, implement and validate HUI, based on parallel mechanism architecture. 3 Figure 2: The fundamental issues at the core of haptic realism are tied closely to complexity of Haptic User Interfaces and Haptic Modeling Fidelity. In this thesis, we focus on studying various Haptic User Interfaces. The physical design of the haptic device, in terms of selection of the type, number, location and actuation of the individual articulations plays an important role in determining the capabilities and overall performance of the system. The system must be designed and controlled carefully in order to minimize singular configurations, perform a wide range of constrained motion-force manipulation tasks with dexterity and strength, while remaining robust to local controller lapses and environmental disturbances. 4 1.2 Problem Statement Consider the illustrative case-scenerio of creating a haptic device to be used for simulating virtual knee replacement surgery. In any such typical orthopedic surgery, the surgeon needs to perform gross motor tasks (such as cutting through tissues, drilling and sawing through bones, hammering in pins to attach a jig), as well as finer sensorimotor tasks (such as paring, shaving and suturing). Figure 3 is a representative illustration of some of these typical tasks. In seeking to create a haptically-enabled virtual simulator to train these sensorimotor skills, a designer needs to first translate these various tasks specifications into design specifications. For example, the size of the typical working region, the ranges of motion needed for the various tasks, the ranges of forces (from suturing to drilling and sawing) that need to be rendered are important task-specifications. (a) (b) (c) (d) Figure 3: Typical tasks involved in a knee replacement surgery (a) drilling through bones; (b) hammering pins; (c) sawing through bones; and (d) suturing. The operation region required to perform the surgery defines the „workspace‟ of a haptic device (although proper scaling can be used to reduce the required space). The requirement to move in various directions and orientations defines the degree-of-freedom of the haptic devices. The ability to render high force and high stiffness for drilling and 5 sawing simulation probably favors a parallel-architecture haptic device design over a serial-architecture one. Ideally, these design specifications can be captured and characterized by appropriate quantitative performance measures (workspace, manipulability, and stiffness), wherein it is desirable to retain a parametric relationship to critical device parameters (link lengths, types of joints, etc.). In this setting, the process of design of a haptic device to meet desired specifications can be reduced to an optimization problem with appropriate performance measures to serve as objective function over the design space of the unknown device parameters (which we adopt). 1.3 Serial vs. Parallel Architecture Haptic Devices Parallel architecture manipulators consist of a moving platform that is attached to a fixed base by several articulated kinematic chains, which create one or more closed kinematic loops within the system [1-2]. While serial architectures possess a large work volume and high dexterity, numerous disadvantages such as low precision, poor force exertion capability, low payload-to-weight ratio, and high inertias tend to limit its use in such applications. On the other hand, parallel mechanisms based devices are well-known for their high stiffness, low inertia, high rigidity and accuracy, and high payload-toweight ratios, which enable large bandwidth transmission of forces. Other desired properties can be achieved through optimizing the underlying mechanical design and selection of suitable control scheme. The Moore‟s law driven improvements in computation have now almost overcome the limitations on real-time placed by the complicated input-output relationships. Hence, application settings such as the multi-axis grinding machining centers [3-6]. Other applications to benefit from the high motion 6 agility and payload capacity of parallel architectures include flight simulators [7-8], agileeyes [9], human motion simulators [10], and force reflecting hand controllers [11-13]. Figure 4: Examples of commercial haptic devices based on serial architecture. Parallel-architecture haptic devices offer significant advantages over serialarchitecture counterparts in applications requiring high stiffness and high accuracy. To this end, many haptic devices have been created and deployed by modularly piecing together several serial-chain arms to form an in-parallel system. However, the overall system performance depends both on the nature of the individual arms as well as their interactions. We build on the rich theoretical background of constrained articulated mechanical systems to provide a systematic framework for formulation of system-level kinematic performance from individual-arm characteristics. Specifically, we develop the system-level kinematic model in a symbolic (yet algorithmic) fashion that facilitates: (i) 7 computational development of pertinent symbolic equations; (ii) generalization to arbitrary architectures; and (iii) combined symbolic/numeric analyses of performance (workspace, singularities, and design sensitivities). These various aspects are illustrated using the example of the Quanser High Definition Haptic Device (HD)2 – an in-parallel haptic device formed by coupling two 3-link Phantom 1.5 type serial chain manipulators with appropriate passive joints. Figure 5: Examples of commercial haptic devices design based on parallel architecture. Recently, there has been considerable interest in creating parallel-architecture haptic devices as in-parallel systems by a modular composition approach, wherein multiple articulated serial-chain arms cooperate to control a common end-effector. Such a composite-system can now potentially allow for increased redundancy, robustness, and reliability and even active reconfigurability for different tasks. Further, in promoting 8 reuse of components, such a modular “building-block” approach is also a favorable engineering practice. However, such modularity creates increased design-choices, in terms of methods to realize given tasks, and requires a design-selection process to determine the best designs. However, the system performance in a modularly composed system depends both the nature of the individual modules as well as their interactions, which creates challenges. The physical layout of the parallel haptic device, in terms of selection of the type and number of the in-parallel articulated chains, and their attachment to the mobile platform determines the topology of the system. The subsequent selection of type, number, location and actuation of the individual articulations (within the chain) completes the determination of the workspace, mobility, controllability, and overall performance of the system. This is an aspect that we examine in the context of the Quanser High Definition Haptic Device (HD)2 – an in-parallel haptic device formed by coupling two 3-link Phantom 1.5 type serial chain manipulators to a common end-effector handle. However, the two three-link manipulators cannot be arbitrarily coupled to the handle due to the potential kinematic incompatibility (of the velocities at the end effector). Hence, further passive articulations are necessary in order to accommodate the rigid body constraints. In (HD)2 system, this role is played by the passive revolute and universal joints. Hence, a systematic (and preferably computational) framework for evaluation of the designchoices on individual module- and system-level characteristics is desirable. 9 Figure 6: In-parallel haptic devices by modularly combining two or more serial architecture haptic devices. Performance measures play a critical role in design, optimization and control of robotic systems. See [14-17] for surveys of various local performance measures derived from the generalized Jacobian matrix. The singular value decomposition of the generalized kinematic Jacobian and the geometric relationship (volume, eccentricity, etc.) of the manipulability ellipsoid has been investigated. Other researchers have examined the development of dynamics based measures by extending the notion of manipulability and isotropy to the dynamics domain [18-19]. Equivalent force performance measures for the local velocity based measures may be computed by virtue of the principle of virtual work and used for the synthesis and design of multi-DOF mechanisms. The resulting performance measures have been employed as a means to evaluate the workspace quality [20], measure of kinematic accuracy [21], selection of operating regions [22], design of modular kinematic structures [23], and improvement of numerical properties for resolved velocity and acceleration control of manipulators [24]. While 10 many such measures have tended to be local, several authors have obtained global measures by spatial integration of local measures over a region [25] or by integration over time. However, as Park [16] and van den Doel and Pai [17] note, the sheer diversity of measures to quantify qualitative measures is partially due to the adoption of a local coordinate representation and hence advocate the formulation of coordinate independent measures using the unifying framework of differential geometry. Extensions to manipulability analysis have been studied both in the context of multiple cooperating robot arms as well as parallel manipulators [26-28]. Park and Bobrow [29] examine the optimal base positioning of two cooperating robot manipulators in a geometric framework. Park and Kim [30-31] present an elegant differentialgeometric framework for analysis of manipulability of both redundantly-actuated and exactly-actuated parallel manipulator systems in a unified fashion, which we compared our results with. 1.4 Contributions To this end, we leverage the rich theoretical analysis background for constrained articulated mechanical systems. In particular, we exploit a twist-based analysis of inparallel systems [32] to create the underlying performance-characterization framework. The novel contributions of this work come from: (i) algorithmic modeling of the individual arms, especially exploiting symbolic computational tools; (ii) systematic system-level motion analysis, by composing contributions from the individual modules; and (iii) validation within a combined simulation and hardware-in-the-loop environment. 11 Figure 7: Modularity creates design choices. The performance of the overall system depends on the nature of the individual module as well as their interactions. 1.5 Thesis Organization The remainder of this thesis is organized as follows: In Chapter 2, we discussed some of the design issues for parallel-architecture haptic devices. In Chapter 3, we outlined several existing methods to formulate the Jacobian of both serial and parallel manipulator. Using an RRR and a 3-RRR system as example, we motivate the use of twist-based Jacobian formulation for serial and parallel manipulators, which allows systematic Jacobian formulation that we use in this work. In Chapter 4, performance measures we use in this thesis were presented and their formulations were given. Several planar in-parallel manipulators were use as examples to illustrate the presented ideas. In Chapter 5, we study the PHANToM 1.5 system, which is a serial type manipulator but with a parallelogram sub-system (some authors called it „hybrid‟ manipulator). Specifically, we study the effect of the added parallelogram sub-system to 12 the overall performance of the system. In Chapter 6, we study the Quanser‟s High Definition Haptic Device – HD2, a 5-DOF in-parallel haptic device created from modularly piecing together two PHANToM 1.5 haptic devices. We show the workspace, manipulability and stiffness of this device. Similar to the PHANToM 1.5 system, we also study the effect of the two added parallelogram sub-systems to the overall performance of the device. In Chapter 7, we look at the design of haptic device from another perspective. Since a haptic device is always coupled with a human user while in use, we proposed a musculoskeletal analysis framework in which co-simulate of a human user with a device is possible. Using this framework, we can parametrically study various design variables and perform optimization to study design parameters that affect human-device interactions. Chapter 8 summarizes the contributions in this work, and concludes the work by providing directions for future research. 13 2 Background Parallel architecture haptic devices feature multiple closed-kinematic loops and kinematic/ actuation redundancy which create opportunities for performance enhancement as well as challenges in modeling and control of such systems 2.1 Parallel Architecture Manipulator Figure 8: Using a 2-DOF RR manipulator as building block, many interesting haptic devices can be developed by modularly piecing the individual small system in different ways to create multi DOF haptic devices. 14 Immense possibilities exist for realization the design of parallel-architecture manipulators based on number of supporting chains, the type and number of joints in each chain and the location of their attachment to the fixed and moving platforms - see [33] and [34-35] for detailed listing of parallel-architecture robots and related bibliography. From a design perspective, three overlapping task decomposition stages will be considered. First, the designer has to select between competing component designs such as selection of type, location and number of articulations within each parallel chain and then number of chains – a process which we will loosely term “type synthesis”. Second, considerable freedom still exists from the viewpoint of selection of the characteristic dimensions of the sub-chains, locations of attachment for the manipulators – a process which we will term “dimensional synthesis”. Finally, since the system is redundant, it can still assume several infinities of postures/configurations permitting the selection of an “optimal” configuration – a process we will term “configuration synthesis”. Figure 9: Kinetostatic design optimization to improve both workspace volume and quality (stiffness, accuracy, velocity and force performance). 15 Major design variants are possible based on nature of the intermediate chains connecting the fixed and moving platform. Pantograph legs, five-bar linkages, serial chain linkages, spherical linkages, or even cable tendon transmission are all viable candidates and choice of leg design and its parameters significantly influence systemworkspace and performance (See Figure 8). For a parallel mechanism, the workspace of a PKM has not a simple geometric shape, and its functional volume is reduced, compared to the space occupied by the machine [36]. The velocity and force transmission ratios and end-effector stiffness may vary significantly in the workspace (at various locations and along different directions) because the displacement of the tool is not linearly related to the displacement of the actuators. Further, unlike serial chain manipulators, singularities appear inside the workspace due to individual-chain or system-level effects [37]. Hence, we will pay special attention to improving both the size and quality of the workspace by consideration of kinetostatic criteria at every stage in the design process. The development and use of quantitative kinetostatic measures, based on the conditioning of the combined-system Jacobian matrix, allow a transformation of the design problem into a design optimization problem. The overall optimal design can thus by realized by a combined design-synthesis and simulation-based design-refinement approach [38-39]. It is noteworthy that the framework of Park and Kim [30-31] permits treatment of these issues, including the effects of redundancy and indeterminacy, in a coordinate-free differential-geometric setting. 2.2 Parallel Architecture Manipulator Control The system must be subsequently designed and controlled carefully due to the presence of closed kinematic chains with configurations chosen in order to: (i) minimize 16 singular configurations of the system [37]; (ii) enhance mutual cooperation (motions and forces) to take advantage of redundancy during task performance; and (iii) improved robustness to local controller lapses and environmental disturbances. A major difficulty that prevents application of the vast control literature developed for the serial counterparts to redundantly actuated parallel manipulators is the lack of an efficient dynamical model for real-time control. Unlike unconstrained or nonholonomically constrained mechanical systems, Yun and Sarkar [40] survey several methods for modeling systems with holonomic constraints, and present an elegant unified state-space formulation for such systems we will adopt. The configuration kinematic model will be determined and extended to the configuration dynamic model by a Lagrangian reduction onto the tangent velocity distribution [40-41] permitting us to connect this parallel manipulator to the standard control literature. Redundant actuation provides an effective means for eliminating singularities of a parallel manipulator, thereby improving its performance such as Cartesian stiffness and homogeneous output forces. The use of redundant actuation also gives rise to more homogeneous output forces and minimized internal loading torques of the actuators of the manipulator [42-44]. There have been papers on dynamics of parallel manipulators with normal or non-redundant actuation [45-47] but, research on redundantly actuated parallel manipulators is scarce [48]. The redundant actuation, in the articulations, can be used to actively control both the relative configuration and the interaction forces between the modules simultaneously. Most of the developed schemes (in other contexts), seek to achieve this by decoupling position control from the force control, either in the task/operational space or joint space. 17 While the decoupling of the motions and force control in operational space [49] yields algorithms that lack coordinate and frame invariances [50] configuration space decoupling approaches [51-52] do not suffer from similar problems. We will develop a hybrid velocity/force control method of Z. Li [48] in the configuration space. The velocity controller will be designed in the constrained configuration motion space while projected interaction forces, in the orthogonal joint force space, may be controlled by controlling the integral of the force error by implicit, explicit force control or impedancebased approaches. 2.3 Virtual and Physical Prototyping Implementation Time domain simulation of ordinary- and partial-differential equations will play a major role both in the initial design, test and integration of haptic simulation systems and subsequently in the scenario-based training of normal and abnormal procedures. Figure 10: Rapid virtual and physical prototyping application developed for 5-DOF parallel haptic device. 18 However, it is highly desirable to be able to completely simulate a wide variety of scenarios digitally initially and to subsequently be able to validate models against actual field results. Such an approach is again both simulation intensive and incorporates elements of HIL data acquisition. Our approach emphasizes: (a) Development of the models and algorithms in a graphical, high-level block diagrammatic language, Simulink [53] that preserves design intent but permits hierarchical abstraction and encapsulation; (b) Simulation, testing and refinement of the models and algorithms by rapid distributed virtual prototyping; and (c) Rapid conversion of the refined algorithms into real-time executable, using RT-LAB for operation on the distributed computing environment for hardware-in-the-loop testing with the sensors and actuators. We anticipate that these will play a significant role in speeding up the process of development and testing of our systems of interest. 19 3 Technical Background Parallel-architecture haptic devices offer significant advantages over serialarchitecture counterparts in applications requiring high stiffness and high accuracy. To this end, many haptic devices have been created and deployed by modularly piecing together several serial-chain arms to form an in-parallel system. The concept of modularly piecing serial chains or simple parallel chain (i.e. the Five-bar) to form parallel haptic systems with multiple degree-of-freedom (DOF) such as the di-tetrahedral mechanism, Hayward mechanism, and Compass mechanism, discussed by Hui, et al [54] as early as 1995. The 6-DOF Pen-based Force Display [55] and 6-DOF Haptic Master [56] developed by Hiroo Iwata of University of Tsukuba in Japan were created by modularly piecing together two and three PHANToM 1.5 like manipulator, are examples of such systems. However, the overall system performance depends both on the nature of the individual arms as well as their interactions. In order to study the performance of the haptic devices, we need to formulate the Jacobian of the system. We build on the rich theoretical background of constrained articulated mechanical systems to provide a systematic framework for formulation of system-level kinematic performance from individual-arm characteristics. Specifically, we develop the system-level kinematic model in a symbolic (yet algorithmic) fashion that facilitates: (i) computational development of 20 pertinent symbolic equations; (ii) generalization to arbitrary architectures; and (iii) combined symbolic/numeric analyses of performance (workspace, manipulability, and stiffness). In this Chapter, we show various exiting formulations for obtaining the Jacobian of serial manipulator, including Conventional method (by differentiating position vector), the Spatial Vector Formulation shown in [34], and finally the Twist-based Jacobian Formulation (including Body-Fixed Twist and Spatial Twist). Followed by using a 3RRR manipulator as an example, we show the process of obtaining system-level Jacobian for parallel manipulator using various methods and with Twist-based Jacobian Formulation method. In particular, we show the process of formulating system-level Jacobian for in-parallel system from Jacobian of individual chain, which we use in our work to study and analyze various in-parallel haptic devices. 3.1 Serial Manipulator Jacobian Formulation 3.1.1 Conventional Method The Jacobian of a serial manipulator shown for a three link RRR manipulator can be obtained by first expressing the position of a point on the end-effector of the manipulator with respect to the global frame of reference, and subsequently differentiating the equation to obtain the velocity-level relationship between end-effector velocity and joint rate [24]. 21 Figure 11: Reference frames assignment for a RRR manipulator. The position vector to the end-effector expressed in the fixed frame {0} can be written as: e 1 xe ye L1 cos( 1 ) L1 sin( 1 ) L2 cos( L2 sin( 1 1 2 3 ) 2 ) 2 L3 cos( 1 L3 sin( 1 ) ) 3 2 (1) 3 2 The Jacobian can be obtained by simply differentiating the position vectors with respect to time: e xe ye where sin -L1 sin L1 cos 1 123 sin( 1 1 1 - L2 sin L2 cos 12 2 3 12 - L3 sin 123 L3 cos 123 ) , and cos 123 22 1 -L2 sin 12 - L3 sin L2 cos 12 L3 cos cos( 1 2 123 123 3 ). 1 -L3 sin L3 cos 1 123 2 123 3 (2) 3.1.2 Spatial Vector Formulation While the above formulation works well for planar system, for spatial system, the analytic Jacobian does not yield the system Jacobian. Instead we adopt a systematic approach, which utilizes the DH frame assignments to determine various columns of the Jacobian matrix (the twist contribution from each joint). Using the origin of the endeffector reference frame as reference point to describe the velocity state of the endeffector, the end-effector velocity can be expressed as [34]: n vn i i zi pn* zidi (3) i 1 n z n i i (4) i 1 where and d are the rate of rotation about i th joint and rate of translation along i th joint, z i is a unit vector along i th joint axis, and i pn* is a vector defined from the reference frame of i th link to the origin of the end-effector frame. Note that all vectors in Eqn. (3) and (4) are expressed in the fixed reference frame. Note that the expression of subscript i in both z i and i pn* in Eqn. (3) and (4) is related to the DH convention used (Here we show a variant using the modified DH convention outlined in [57], if the conventional DH is used, refer to [34], their resulting Jacobian matrix will be the same). Writing Eqn. (3) and (4) in matrix form, we obtain x vn n where 23 Jq (5) J Ji Ji J 1, J 2 , i zi , Jn , pn* for revolute joint, zi zi 0 (6) for prismatic joint. For spatial system, the left-hand side of Eqn. (5) is a 6 1 ( 3 1 for planar system) vector with velocity vn and angular n component. The right-hand side of Eqn. (5) is the product of the Jacobian matrix with the vector of all the actuated joint rates. The joint rates are given as qi , qn , and the i th column of the Jacobian matrix, q1, q2, J i , represent the contribution from i th joint rate to the velocity of the end-effector. Equation (5) allows the systematic symbolic computation of the Jacobian for a given system. To compute the Jacobian, Eqn. (5) shows that we need to compute the location and direction of each joint axis, and this can be accomplished using the following relations: 0 Ri 0 , 1 0 zi i Ri i ri pn* (7) i 1 0 1 pn* where ai i ri 1 di sin di cos i (8) i Which is the position vector defined in the DH convention used to create the homogeneous transformation matrix. Equation (7) and (8) shows that, once we assigned coordinate frames according to DH convention to a robotic system, the homogeneous 24 transformation matrices ( iAi 1 ) that generated from these frame assignment contain all the necessary information we need to compute Eqn. (7) and (8), thereby allow the automatic generation of the Jacobian matrix symbolically, since i i Ai 1 i Ri 1 0 ri 1 (9) 1 We demonstrate this process with a planar 3 link manipulator. The DH frame assignment and the corresponding DH parameters are given in Figure 11. The corresponding homogenous transformation matrices are given as: 0 cos sin 0 0 3 1 0 0 0 A1 A4 1 1 0 1 0 0 sin 1 cos 1 0 0 0 0 1 0 0 0 1 A 0 2 0 cos sin 0 0 sin 2 cos 2 0 0 2 2 0 L1 0 0 2 A3 1 0 0 0 cos sin 0 0 3 3 sin 3 cos 3 0 0 0 L2 0 0 1 0 0 0 0 L3 0 0 1 0 0 0 The direction of each joint axis (as expressed in the base frame) is given by 0 z1 0 R1 0 1 0 0 , z2 1 0 0 R2 0 1 The vector i pn* , is given by: 25 0 0 , z3 1 0 0 R3 0 0 1 1 0 (10) 3 2 1 * 4 0 3 * 4 0 2 * 4 0 p p p L3 cos( 1 + 2 + 3 ) L3 sin( 1 + 2 + 3 ) 0 0 R3 0 L3 0 R3 r4 3 R2 r3 1 2 R1 r2 L2 R2 0 0 * 4 p p L3 cos( 1 + 2 + 3 ) L3 sin( 1 + 2 + 3 ) L3 0 L1 R1 0 0 * 4 0 2 * 4 p L1 cos( 1 ) L1 sin( 1 ) L2 cos( L2 sin( L2 cos( L2 sin( 2 1 L3 cos( 1 L3 sin( 1 ) ) 2 0 1 2 1 L3 cos( 1 L3 sin( 1 0 ) ) 2 1 ) ) (11) 3 2 3 2 ) ) 3 2 3 2 Since all three joints are revolute joints, the columns of the Jacobian can then be calculated from Eqn. (6): z1 J1 1 p4* z1 J2 p4* z2 2 3 2 ) ) 3 -L2 sin( 1 L2 cos( 1 ) - L3 sin( 1 ) L3 cos( 1 2 2 2 2 ) ) 3 3 (12) 1 3 z3 J3 ) - L3 sin( 1 ) L3 cos( 1 2 2 1 2 z2 -L1 sin( 1 ) - L2 sin( 1 L1 cos( 1 ) L2 cos( 1 p4* z3 -L3 sin( 1 L3 cos( 1 ) ) 3 2 3 2 1 Note that in Eqn. (12), the resulting J i are 6 1 vectors but reduced to 3 1 since it is a planar system. Finally, the Jacobian is given as: J J 1, J 2 , , Jn -L1 sin 1 - L2 sin L1 cos 1 L2 cos 1 12 12 - L3 sin 123 -L2 sin 12 - L3 sin L3 cos 123 L2 cos 12 L3 cos 1 123 123 Which is identical to the one obtain in Eqn. (2), when we express x of x vn T n . 26 -L3 sin L3 cos 1 n vn 123 (13) 123 T instead 3.1.3 Twist based Jacobian Formulation Screw theory was introduced by Sir Robert S. Ball in 1876 to generalize two important theorems in the study of rigid body mechanics. Chasles Theorem states that a rigid body moves from one position to another by means of a rotation about an axis (line), followed by translation that is parallel to that axis (line). Analogously, Poinsot Theorem states that any rigid body acted under a force system can be replaced by a single force along an axis (line) combined with a torque that is about that axis (line). Hence, a rigid body motion can be described by the notion of screw motion, and the infinitesimal version of such motion is called a twist. Due to the duality relationship, the force system can be referred as a wrench that is dual to twist. Hence, the analysis of motion and force system can be analyzed in a unified manner using screw theory. An interested reader may refer to Hunt [58] for the more traditional line-based screw-theoretic modeling. The adopted twist-based modeling approach emphasizes the linkage to matrix-Lie group based modeling and analysis of rigid-body mechanics[59]. Specifically, the 3-step process discussed below emphasizes: (i) systematically constructing the twist matrix for each joint in the local proximal frame, from a homogeneous transformation-matrix representation; (ii) transforming the joint twist-matrices into a common reference frame, using adjoint transformations; and (iii) extracting twist vectors and composing into a Twist-Assembled Jacobian Matrix (TAJM). 27 Figure 12: Homogeneous Transformation between two frames. The relative configuration of a moving frame {E } relative to a fixed frame {F } is defined by the homogeneous transformation expressed in a 4 F F where F RE F 3 d 4 SO(3) AE T 0 3 3 {R RE F d F 1 : RRT AE 4 matrix form as: SE 3 I , det R (14) 1} is a rotation matrix, and is a displacement vector. A twist matrix T se(3) can be represented by a 4 matrix of the form: T v 0T 0 0 , z 0 z y where T T vT T 6 x 3 is a skew-symmetric matrix, the form of t y , and v so 3 x (15) 0 3 . The twist vector then takes is the angular velocity and v is a linear where 28 velocity vector. An unskew operation may also be defined on the set of twist matrices that allows the extraction of twist vectors as: Unskew(T ) t T T vT T (16) 3.1.3.1 Spatial Twist In general, a spatial twist matrix corresponding to the motion of the moving frame {E } with respect to its immediately preceding frame {F } (as expressed in the frame {F } ) can be formed as: F F F TE F AE AE 1 (17) Such a twist matrix can then be transformed to any arbitrary frame {N } by a similarity transformation as: N F TE N AF F F N TE AF 1 (18) The forward kinematics of an articulated system with N joints can be formulated in terms of homogeneous transforms as: 0 AN 0 A1 1A2 N 1 AN (19) The total twist can be considered as a linear combination of various twist contributions of individual articulated degrees of freedom expressed in a common frame: 29 0 0 0 TN 0 1 0 T1 A1 1 2 T2 A1 1 2 0 A2 2 T2 T1 0 0 AN 0 T3 A2 1 T3 N 1 1 TN 1 0 AN (20) 1 TN Using Eq. (18), this can be transformed to inertial frame {W } as: W 0 TN W W T1 0 A0 0 T7 W A0 T1 T2 A0 W A0 1 1 W A0 T2 W A0 (21) 1 W 7 A0 TN W A0 TN Finally, these twist matrices can be rewritten as linear combinations of twist vectors rates parameterized [ 1 N 2 by the corresponding manipulation variable ]T . A twist-assembled Jacobian matrix ( JT ) may now be constructed in the form of: 1 w t t1 t2 tN JT where ti rates of 2 (22) N Unskew(Ti ) are the twist vectors corresponding to the manipulation variable 1 , 2 , …, N , respectively. The Jacobian matrix ( JT ) can be interpreted as the linear operator that maps the contribution of the manipulation variable rate at each actuated joint in the system to the inertial twist at frame {W } . 30 Again, using a RRR manipulator as our example, with the DH frame assignment shown in Figure 1, the overall transformation matrix for this 3 link system can be written as: 0 0 A1 1A2 2A3 3A4 A4 (23) Taking the derivative of Eqn (23), we obtain: 0 0 A1 1A2 2A3 3A4 A4 0 A1 1A2 2A3 3A4 + 0A1 1A2 2A3 3A4 (24) 0 A1 1A2 2A3 3A4 Post-multiplying Eqn (24) by 0A4 1 , we obtain: 0 A4 0A4 1 0 A1 1A2 2A3 3A4 0A4 1 0 A1 1A2 2A3 3A4 0A4 1 + 0A1 1A2 2A3 3A4 0A4 1 Where 0A4 1 0 A1 1A2 2A3 3A4 1 3 A4 1 2 A3 1 (25) 0 A1 1A2 2A3 3A4 0A4 1 1 A2 1 0 A1 1 , recognizing AA 1 I , we obtained the following expression: 0 A4 0A4 1 0 A1 0A1 1 0 A1 1A2 1A2 1 0A1 1 + 0A2 2A3 2A3 1 0A2 1 0 A3 3A4 3A4 1 0A3 1 (26) The Jacobian obtained by assemble the twists contributed from all joint screws (the last term in Eqn (26) is zero since 3A4 0 ), expressed in fixed frame {F } [60], is given as: e 1 1 1 xe 0 L1 sin( 1 ) L2 sin( ye 0 -L1 cos( 1 ) -L1 cos( 1 ) - L2 cos( L1 sin( 1 ) 31 1 1 ) 2 2 1 2 ) 3 (27) On the other hand, the Jacobian obtained by assembles the twists vectors contributed from all joint screws, expressed in frame {W } ( {W } is located at the endeffector while having the same orientation as the fixed frame {F } ), is given as: 1 e xe -L1 sin ye L1 cos 1 1 - L2 sin 12 L2 cos 12 1 - L3 sin -L2 sin 123 L3 cos 123 L2 cos 12 1 1 - L3 sin 123 -L3 sin 123 2 L3 cos 123 L3 cos 123 3 12 (28) Comparing Eqn (2) with Eqn (28), we see that the Jacobian matrix formulated using the conventional method and the Jacobian matrix formulated using spatial twist expressed in end-effector frame {W } are identical. 3.1.3.2 Body Fixed Twist A body-fixed twist corresponding to the motion of the moving frame {E } , with respect to its immediate preceding frame {F } , expressed in the moving frame {E } is given by: E E where 0 x y F TE AE x F E E F 1 F AE y 0 E and z z E F E 0 0 0 F vE vx F vE 0 vy vz (29) T . Using the unskew 0 operation, the twist vector can be extracted as: E F tE T T 32 vT T (30) where one can interpret a body-fixed twist as follow: v ( x, y , z (vx , vy , vz ) and ) are instantaneous linear and angular velocities of frame {E } with respect to frame {F } , as expressed in moving frame {E } . The Jacobian of a serial RRR formulated using body-fixed twist (expressed in the end-effector frame {E } ) can be obtained by pre-multiplying 0A4 1 to the derivative of the position transformation matrix (Eqn (24)): 0 A4 1 0A4 0 A4 1 0A1 1A2 2A3 3A4 0 A4 1 0A1 1A2 2A3 3A4 + 0A4 1 0A1 1A2 2A3 3A4 where 0A4 1 and mAn 1 1 0 A1 1A2 2A3 3A4 n 3 A4 1 2 A3 1 (31) 0 A4 1 0A1 1A2 2A3 3A4 1 A2 1 0 A1 1 , recognizing AA 1 I Am , we obtained the following expression: 0 A4 1 0A4 1 A4 1 0A1 1 0A1 1A4 2 A4 1 1A2 1 1A2 2A4 + 3A4 1 2A3 1 2A3 3A4 4 A1 0A1 1 0A1 4A1 1 3 A4 1 3A4 (32) 4 A2 1A2 1 1A2 4A2 1 + 4A3 2A3 1 2A3 4A3 1 3 A4 1 3A4 The resulting Jacobian matrix, formulated using body-fixed twist, is given as: 1 e xe ye L1 sin L1 cos 23 23 1 L2 sin L2 cos L2 sin 3 L3 3 L2 cos 3 3 L3 1 1 0 2 L3 3 (33) Summarizing the Jacobian obtained using all methods discussed above in the following table: 33 Summary Differentiating Position Vector Spatial Vector Formulation -L1 sin L1 cos 1 -L1 sin L1 cos 1 1 1 1 - L2 sin L2 cos 1 - L2 sin L2 cos 12 12 12 12 - L3 sin 123 L3 cos 123 1 -L2 sin 12 - L3 sin L2 cos 12 L3 cos - L3 sin 123 L3 cos 123 1 -L2 sin 12 - L3 sin L2 cos 12 L3 cos 1 1 1 TAJM with Spatial Twist 0 L1 sin( 1 ) L1 sin( 1 ) L2 sin( 0 -L1 cos( 1 ) -L1 cos( 1 ) - L2 cos( TAJM with Spatial Twist in {W } Frame -L1 sin L1 cos 1 1 1 - L2 sin L2 cos 12 12 - L3 sin 123 L3 cos 123 1 TAJM with Body-Fixed Twist L1 sin L1 cos 23 23 L2 sin L2 cos 3 3 L3 123 123 123 1 -L3 sin L3 cos 123 123 123 123 ) ) 2 1 2 1 1 -L2 sin 12 - L3 sin L2 cos 12 L3 cos 1 L2 sin L2 cos 3 123 1 -L3 sin L3 cos 3 L3 123 123 1 -L3 sin L3 cos 123 123 1 0 L3 Table 1: Table summarizing the Jacobian matrix formulated using various methods. The body and spatial velocities are physically interpreted as the instantaneous translational and rotational velocity written relative to the body or spatial frame, respectively. Body-fixed twist and Spatial twist of a manipulator can be related by Adjoint Transformation [61]. While the various twist formulations all represent the endeffector twist in terms of joint rates, care has to be taken when use the resulting Jacobian matrix to compute performance measures such as manipulability ellipsoid, stiffness ellipsoid of a manipulator. The linear velocity portion of the Jacobian formulated using spatial twist represent the velocity of a point on the end-effector that is located at frame {F } (imagine the end-effector as a rigid body such that part of this body include a point that is located on the origin of frame {F } ). The body-fixed twist, on the other hand, represent the linear and angular velocity of the end-effector but expressed in the end34 effector frame, let say {E } . It can be used to compute performance measures of the system such as manipulability indices and stiffness indices (where orientation is not considered, see Figure 13). However, to compute the manipulability ellipsoid and stiffness ellipsoid, the ellipsoid needs to compensate for the angular difference between frame {F } and frame {E } to express them properly (see Figure 14). This tends to be a tedious process for spatial manipulator. In particular, Jacobian matrix resulting from using spatial twist and expressed in {W } frame is the formulation we used in this thesis to obtain the Jacobian of in-parallel manipulator as it represents the velocity of the endefffector expressed in a frame that is common to all chains. Figure 13: Surface plot of isotropy index over the entire workspace of a two link RR manipulator computed using the Jacobian formulated using (top left) analytical method, (top right) spatialtwist expressed in {W } frame, (bottow left) spatial twist expressed in {F } frame, and (bottom right) body-fixed twist expressed in {E } frame. 35 (a) (b) (c) Figure 14: Manipulability ellipsoid computed from Jacobian formulated using (a) spatial twist, expressed in {F} frame; (b) body-fixed twist, express in {E} ; and (c) spatial twist, expressed in {W} frame. 3.1.4 Reciprocal Screws The wrenches combine naturally with twist to define instantaneous work done by the mechanical system. Given a twist tT [wT are velocities, wT vectors [ T of fT ] angular 6 and linear 3 , where f and m vT ] 3 6 3 , where w respectively and and v a 3 wrench are linear force and angular moment, respectively. We can ten define the infinitesimal work as: W wT t f v (34) A wrench w is said to be reciprocal twist t if the value of W vanishes. This means the action of wrench w on the twist t produces no work. Given a twist system T spanned the set of twists {t1, t2, , tn } , we can form the Jacobian matrix J . The reciprocal wrench system of T , can be determine using linear algebra approach, where Wr {wr 1, wr 2, , wr ,6 n } , W [wr 1, wr 2, 36 , wr ,6 n ] , and W is the left nullspace of J . As outlined in [61], the twists and the wrenches can be visualized using a RRR manipulator as an example. In this example, twist are expressed as : wt wrenches are expressed as: wW [M z Fx [wz vy ]T , vx Fy ]T . The twist vectors, expressed in frame {W } , are: w t1 -L3 sin 123 L3 cos 123 1 - L2 sin L2 cos 12 12 w - L1 sin 1 L1 cos 1 1 -L3 sin 123 - L2 sin L3 cos 123 L2 cos t2 w 12 1 -L3 sin L3 cos t3 12 123 123 The wrenches are: w W1 L3 sin( 3 ) cos( 1 ) wW2 2 sin( 1 ) 2 L3 [L2 sin( 3 ) L2 cos( 1 L2 sin( 1 L1 sin( 2 )] 3 ) L1 cos( 1 ) wW3 2 ) L1 sin( 1 ) 2 L3 sin( 2 ) L2 sin( 2 ) cos( 1 ) sin( 1 ) 3 where: w W1 null ([ wt2, wt3 ]T ) w W2 null ([ wt1, wt3 ]T ) w W3 null ([ wt1, wt2 ]T ) One can verify the resulting wrenches by making sure w W1 w t3 0 , etc. 37 w W1 w t2 0, RRR Manipulator and location of its Twists and Wrenches RRR Manipulator and location of its Twists and Wrenches 4 3 Wr 1 Wr 2 2 2 Wr Wr 1 Y 2 T 3 Wr 3 1 3 T 2 T 0 X Wr Y 2 2 1 1 3 T 3 T T y-position 4 1 1 X 0 -1 0 -1 0 1 -1 2 y-position 3 4 5 -2 -1 -2 x-position 0 1 2 3 4 5 x-position (a) (b) Figure 15: Locations and directions of twists and wrenches of a three link RRR planar manipulator, red color arrows represent twists and blue color arrows represent wrenches. (a) Isometric view; and (b) top view of the manipulator. 3.2 Conventional Jacobian Formulation – Parallel Manipulator In this section, using an 3-RRR parallel manipulator as example, we show that various Jacobian that could resulted by using choosing different loop in the system. One could end up with different sets of equations using this method. Method I gives the Jacobian in terms of three actuated joints only; Method II give use the Jacobian in terms of all the joint rates (including three active and all six passive joints); while Method III, resulted in a Jacobian with three active joints and three passive joints. This serves as our motivation, as twist-based formulation allows for consistent way of Jacobian formulation for parallel system. 38 Figure 16: Nomenclature of 3RRR planar manipulator used in the analysis. Refer to Figure 16, let xe , ye , e , be the end-effector position and angle with respect to the inertia frame {F } . RRR manipulator, 2i , i 1i , i 1,2, 3 and 1,2, 3 , are the active joints on leg i of the 33i , i 1,2, 3 are the passive joints on leg i of the 3-RRR manipulator, a1i , a2i , a 3i represent the length of the 3 links on leg i of the 3RRR manipulator. 39 3.2.1 Method I Here we want to find the relation between the end-effector position xe , ye , e , and active joints 1i , i 1,2, 3 . Looking at the first chain A1B1C 1 in Figure 16: The vector P21 can be found by: P21 P11 a11 cos( 11 ) a11 sin( 11 ) (35) Similarly, the vector P31 can be found by: P31 xe a 31 cos( e 31 ) ye a 31 sin( e 31 ) (36) P21 , along with P31 , form the following relationship: P31 P21 T P31 P21 a21 2 (37) Equation (37) can be written explicitly as: P31,x P21,x 2 P31,y Which gave the relation between xe , ye , e , and P21,y 1i 2 , i a21 2 (38) 1,2, 3 . The same relationship holds for chain A2B2C 2 and A3B3C 3 , where we can now generalized Eq. (35) as: P2i P1i a1i cos( 1i ) a1i sin( 1i ) Similarly, we can generalize Eq. (36) as: 40 , i 1,2, 3 (39) P3i xe a 3i cos( ye a 3i sin( ) e 3i e ) 3i i , 1,2, 3 (40) i (41) And finally, Eq. (38) can be generalized as: P3i,x Where P2i f P2i,x 2 and P3i 1i P3i,y f xe , ye , P2i,y e 2 2 a2i , 1,2, 3 . Note that P1i and a1i are known variables in Eq. (39), and a 3i and i are known variables in Eq. (40). Hence, from Eq. (41), we now have three equations and six unknown in xe , ye , e and 1i , i 1,2, 3 . Since these are nonlinear equations, numerical method is needed to solve for either the forward position problem (given 1i solve for xe , ye , e 1i , i e ) or the inverse position problem (given xe , ye , , i 1,2, 3 , , solve for 1,2, 3 ). To find the Jacobian for the 3RRR system, differentiate Eq. (41), and one can obtain the following linear relation: A Where A f xe , ye , e , , 11 12 , 11 , 13 12 T , 13 and B B xe , ye , T 0 e f xe , ye , e , , 11 12 (42) , 13 . Hence, the Jacobian of the system is: xe , ye , T B 1A e xe , ye , T e J , 11 11 , , 12 12 , T 13 T 13 Using MATLAB Symbolic Toolbox, one can obtain the matrix A and B, given as: 41 (43) A 2a11 sin( 11 )xe - 2a11a 31 sin(- 11 2a12 sin( 12 )xe - 2a12a 32 sin(- 12 2a13 sin( 13 )xe - 2a13a 33 sin(- 13 B ) - 2a11 sin( ) - 2a12 sin( 2 ) - 2a13 sin( 3 e 1 e e )P11x - 2a11 cos( 11 )ye )P12x - 2a12 cos( 12 )ye 12 )P13x - 2a13 cos( 13 )ye 13 2a11 cos( 11 )P11y 2a12 cos( 12 )P12y (44) 2a13 cos( 13 )P13y 11 B(:,1) B(:,2) B(:, 3) (45) where: B(:,1) B(:,2) B(:, 3) 2xe 2xe 2xe 2a 31 cos( 2a 32 cos( 2a 33 cos( 2ye 2ye 2ye 2a 31 sin( 2a 32 sin( 2a 33 cos( 2a 31 sin( e 2a 32 sin( e 2a 33 sin( e e e e e e e ) - 2P11x - 2a11 cos( 11 ) ) - 2P12x - 2a12 cos( 12 ) 2 ) - 2P13x - 2a13 cos( 13 ) 3 1 ) - 2P11y - 2a11 sin( 11 ) ) - 2P12y - 2a12 sin( 12 ) 2 ) - 2P13y - 2a13 sin( 13 ) 3 1 )(P11x )(P12x 2 )(P13x 3 1 xe ) xe ) xe ) 2a11a 31 sin(2a12a 32 sin(2a13a 33 sin(- 11 e 12 e 13 e 2a 31 cos( 2a 32 cos( 2a 32 cos( ) ) 2 ) 3 1 e e e )(ye )(ye 2 )(ye 3 1 P11y ) P12y ) P13y ) 3.2.2 Method II Here we want to find the relation between the end-effector position xe , ye , e , and active joints 1i , i 1,2, 3 . Looking at the first chain A1B1C 1 in Figure 16: The vector P21 can be found by: xe ye P11 a11 cos( 11 ) a21 cos( 21 ) a 31 cos( 31 ) a11 sin( 11 ) a21 sin( 21 ) a31 sin( 31 ) which directly gave the relation between xe , ye , e , and 1i , i (46) 1,2, 3 . The same relationship holds for chain A2B2C 2 and A3B3C 3 , where we can now generalized Eq. (35) as: 42 xe ye P1i a1i cos( 1i ) a2i cos( 2i ) a 3i cos( 3i ) a1i sin( 1i ) a2i sin( 2i ) a 3i sin( 3i ) i , 1,2, 3 (47) Differentiate this position equation and one can obtain the relationship between passive joints and active joints. Then form the Jacobian. Note that P1i and a1i are known variables in Eq. (39), and a 3i and i are known variables in Eq. (40). Hence, from Eq. (41), we now have three equations and six unknown in xe , ye , e and 1i , i 1,2, 3 . Since these are nonlinear equations, numerical method is needed to solve for either the forward position problem (given position problem (given xe , ye , e 1i , i , solve for 1,2, 3 , solve for xe , ye , 1i , i e ) or the inverse 1,2, 3 ). 3.2.3 Method III Similar to Method II, instead of joining the loop at the end-effector position, we join the loop at the passive joints. Here we want to find the relation between the endeffector position xe , ye , e , and active joints 1i , i 1,2, 3 . Looking at the first chain A1B1C 1 in Figure 16, the vector P31 can be found by: P31 P11 a11 cos( 11 ) a21 cos( 21 ) a11 sin( 11 ) a21 sin( 21 ) (48) Similarly, the vector P31 can be found by: P31 xe a 31 cos( e 1 ) ye a 31 sin( e 1 ) Equation (48) and (49) form the following relationship: 43 (49) P11 a11 cos( 11 ) a21 cos( 21 ) xe a 31 cos( a11 sin( ) 11 a21 sin( ) 21 ye a 31 sin( ) e 1 e ) 1 (50) The same relationship holds for chain A2B2C 2 and A3B3C 3 , where we can now generalized Eq. (50) as: P1i a1i cos( 1i ) a2i cos( 2i ) xe a 3i cos( e i ) a1i sin( 1i ) a2i sin( 2i ) ye a 3i sin( e i ) which gave the relation between xe , ye , e , and 1i , i i , 1,2, 3 (51) 1,2, 3 . Note that P1i and a1i are known variables in Eq. (39), and a 3i and i are known variables in Eq. (40). Hence, from Eq.(51), we now have six equations and nine unknown in xe , ye , and e 1i , 2i i 1,2, 3 . Since these are nonlinear equations, numerical method is needed to solve for either the forward position problem (given for xe , ye , 1i , 2i i e and 2i i 1i , i 1,2, 3 , solve 1,2, 3 ) or the inverse position problem (given xe , ye , e , solve for 1,2, 3 ). Differentiate Eqn. (51), we obtain: a1i sin( 1i ) a1i cos( 1i ) a2i sin( 2i ) a2i cos( 2i ) 1i 1 0 a 3i sin( 2i 0 1 a 3i cos( e e i i ) ) xe ye , i 1,2, 3 (52) e 3.3 Jacobian Formulation for Parallel Systems The differential-kinematic model of the closed-loop constrained system can then be written as: w t JT subject to the general velocity-level constraint equations 44 (53) JC 0 (54) The number of independent loops that forms the Jacobian matrix can be determined by the Euler equation by viewing the system as a network (with the links as nodes and the joints as edges), following [62]. Figure 17: Closed-loop constraints selection for a parallel manipulator, reproduce from [62] Note that within a parallel chain, not all the joints in the system need to be active. The mixture of active and passive joint components can help partition the rate vector as T [ T a T p ]. T a , T p are the subvectors of the active and passive manipulation rates variables within the entire constrained mechanical system. JT and JC can then be partitioned accordingly, rewriting Eqs (53) and (54) as: 45 JT a JC a w JT a p p JC a A general solution of Eq. (56) for (55) 0 (56) can be found as: p JC# JC p p p t p a JC a (57) p where the superscript “#” denotes the Moore-Penrose inverse of the matrix, JC is the p right annihilator of JC , i.e. JC JC p p 0 and p is any arbitrary vector parametrizing the nullspace of JC . Eq. (55) can now be written as: p w t JT JC# JC JT a JT p a p JT J p a a JT JC# p (58) p # Cp JT is the system Jacobian matrix that now relates the actuated joint rates of the system to the end-effector twists. Depending on the nature of the actuation of individual module that forms the system, the overall system can be under-actuated, redundantlyactuated, or fully-actuated. Resulting in different sizes of JC and JC . See [63] for a a p detailed discussion on these various cases. 3.3.1 System Jacobian Matrix of Parallelogram sub-system The system Jacobian JT for in-parallel systems with closed-subloops can now be formulated very systematically and algorithmically. We illustrate this using a general planar RR 2-DOF manipulator with one parallelogram subloop as an example. We model 46 P Lx Ly T L2 2 P 2 P L2 1 y 2 L1 0 1' y L1 1 this system as a constrained system that combines a planar RRR manipulator with 0 x 1 x another RR manipulator, both actuated only at the base joint, as shown in Figure 18. w y w w 3 2 2 ' x P Lx L2 Ly 3 L2 T L2 2 P P 2 y 0 1 1 L1 2 P L2 y 2 L1 1 0 1 0 x x 1' y L1 1 x (a) (b) w Figure 18: A planar RR manipulator system that consists of a parallelogram structure can be modeled as a constrained system consisting a RRR and a RR manipulator. 2 For a system that consist of N linkage, denoting each linkage as L2 k and I , II , III , , N (with N P 1 vector loop-closure constraints), and there are 2 -active -passive DOF in each linkage, the configurationy of the overall system can be 1 L1 completely described by N ( ) generalized coordinates. The generalized velocity 0 1 x can then be partition into: a I a p I p T T N a N p T (59) T (60) where the subscript a and p indicate active and passive joint respectively. The endeffector task equation can be obtained by selecting one linkage as the primary linkage of 47 the system and setting contribution from other linkage to zero. JT and JT can be a p determine as: JT a JaI 06 m 06 m (61) J pI 06 n 06 n (62) JT p While there are many ways to formulate the constraints Jacobian matrix JC and a JC (see [62], reproduce here in Figure 17), one such possibility is to use the velocityp level loop closure equations existed within each two linkages: J aI JC J aII J m 06 m J pII 06 06 m J 06 m 06 06 06 m 06 m m 06 m a J pI JC 06 m III a II a II p 06 m J 06 m 06 J aN 1 J aN 06 m 06 m J m III p 06 m 06 m 06 m J pN p m 1 (63) (64) J pN The procedures shown here allow one to formulate the Jacobian of the in-parallel system formed by multiple serial chain systematically. This process also allows symbolic computation of the system Jacobian. 48 4 Performance Measures …when you can measure what you are speaking about, and express it in numbers, you know something about it; but when you cannot measure it, when you cannot express it in numbers, your knowledge is of a meagre and unsatisfactory kind… -- William Thomson From a design standpoint, the development of quantitative performance measures is an important precursor to applying computational tools to engineering design problem [64]. The performance measures that we adopt here will allow us to systematically study evaluate and subsequently optimize in-parallel haptic devices for specific task requirements. Over the years various performance measures have been developed by the robotics community, initially for serial chain manipulator and subsequently extended to parallel-architecture systems. We leverage and build upon the rich literature of performance measures for articulated mechanical systems to study in-parallel haptic devices. Among the many criteria, a variety of zeroth-order, first-order, and second-order kinematic measures have been studied. In our work, we will focus our efforts on a subset of such criteria, i.e. workspace, manipulability (velocity and force), and stiffness. 49 4.1 Background A variety of performance measures have been used in the recent past for design of parallel haptic devices. For example, Lee et al. [65] use workspace and isotropy index to design and optimize their 6-DOF parallel haptic device. Similarly, Kim et al. use the same design optimization criteria to study their 7-DOF parallel haptic device, PATHOSII. Gosselin et al. [66]design a 6-DOF parallel device with a maximal singularity-free workspace. Kim et al. [67] design a 3-DOF parallel haptic device with redundant actuation by optimizing the stiffness and workspace of the device. Yoon and Ryu [68] study the workspace, isotropy index, and payload index of their 6-DOF parallel haptic device and subsequently optimize their device. Numerous other examples of design of haptic device designs based on similar performance measures can be found in the literature [69-77]. The unique feature that separates a haptic device from a typical robotic manipulator is that it involves bidirectional forces and motions flow between human and device. For this reason, Hale and Stanney [78] suggest that the design of haptic device needs to incorporate aspect of human physiology, psychophysics, and neurological performance which were summarized into: (i) Psychophysical Tactile Interaction Design Guidelines; (ii) Psychophysical Kinesthetic Interaction Design Guidelines; and (iii) Multimodal Interaction Design Guidelines. Hayward and Astley [79] on the other hand suggest performance measures based mostly on device mechanical properties. They provided guidelines in three broad areas: (i) Gross Features (include Degree-Of-Freedom, DeviceBody Interface, Motion Range, Peak Force, Peak Acceleration, Inertia and Damping), (ii) Detail Features (include Resolution, Precision, Bandwidth, Structural Response, Dynamic 50 Precision, and Closed Loop Performance); and (iii) Environment Factors (Including Weight, Noice, Volume, and Safefy). Kirkpatrick and Douglas [80], suggest haptic devices to be evaluated using a standardized virtual reality shape recognition test. The device is evaluated based on how quick a user can use it to recognize shape haptically. Khan et al. summarize these performance measures (partially quantitative and qualitative measures), including some statistical based performance measures in [81]. While these performance measures are useful for the design of haptic devices, they are either qualitative measures or can only be evaluated after the device is manufactured, and are hence not considered further. Beside the workspace, manipulability, and stiffness measures, there are other performance measures used in the robotic community. For example, manipulability polytope [82-83], force polytope [84], dynamic manipulability [85], force transmissibility [86], among other. Pashkevich et al. [87] provide a summary of these other performance measures. 4.2 Zeroth Order Kinematic Performance Measure: Workspace The determination of the reachable workspace of a reference point chosen on the end-effector of an in-parallel robotic manipulators is a important issue in the context of kinematic design of haptic devices. As a position-level performance measure, the workspace determination is a zeroth order kinematic measure of system performance. It is even more important for parallel manipulators which already have a small workspace compared to serial manipulator. Hence is it crucial to tailor/ customize the workspace of a given parallel-manipulators, based on specific application. Workspace computation for parallel manipulator is generally more complicated than its serial counterpart due to 51 multiple closed-loop constraints existing in the system. As outlined by Pernkopf and Husty [88], various types of workspace for in-parallel systems have been studied in the literature. Reachable workspace – all position that can be reached by a point on the endeffector in some orientation, Orientation workspace - all possible orientation of the endeffector about all axes at a point of interest, etc. Out of these, the two that are most commonly studied are (i) constant orientation workspace – the set of points which a point on an end-effector can reach while keeping its orientation fixed, as studied in [89-90]; and (ii) constant position workspace (or called the dexterous workspace, as studied in [91-93]) – the set of orientations possible for a point on the end-effector of a manipulator while keeping the position of the center fixed. The challenge of workspace determination of parallel manipulators arises principally from the lack of analytical solution of the forward kinematics. The inverse position kinematics based approach for determining workspace tends to be inefficient and time consuming. The most common technique for determining the reach of a point on the end-effector of an in-parallel system is by direct numerical simulation, for example [9496]. The workspace is discretized and then each point is being evaluated to determine if it is reachable by all the chains in an in-parallel system. This method is iterative and usually only required minimal theoretical understanding of the system characteristic. Postprocessing is usually required to compute the overall workspace of the system for a given set of systems parameters. Another approach, used by Agrawal [91], Jo and Haug [97], Landsberger and Shanmugasundram [98], using the insight that on the border of the workspace, the velocity of the manipulator along the normal direction to the border must be zero. 52 However, this method uses the Jacobian matrix of the robot for which no closed-form is known. In addition, this method is not convenient to introduce the constraints of link interference and mechanical limits on the passive joints [89]. Improved upon Jo and Haug work [97], Snyman, Plessis, and Duffy [99] formulated the problem as a constraint optimization problem in which the process to determine workspace boundaries can be automated and solve numerically. The determination of analytical expression for the workspace of an in-parallel system in terms of its design parameters (including link lengths, ground locations), are attractive from the viewpoint of performing design optimization for such system. For certain planar parallel manipulator, analytical workspace computation is possible [100], by first determining the parametric expression for the boundaries of the workspace, and then applying the Gauss Divergence Theorem. The procedures of finding the parametric curves that define the workspace boundary can also be automated, resulting in a very fast computation of the workspace. However, this process is not easily extendable to spatial system with three-dimensional workspace. Efforts by Gosselin [101], and Masouleh [102] showed that for three-dimensional workspace, one can obtain the expression of the boundary of the workspace for a specific height (a slice of the workspace) and the overall workspace can be obtained by integrating the workspace area at each slice over its height. But the process become very involved and is also problem dependent. The above three methods were broadly classified as Discretization method, Jacobian matrix method, and Geometrical method by Merlet [103]. In recent time, Computer-Aided Design (CAD) packages are also found to be very useful tools to compute the workspace volume of a parallel manipulator [104-106]. The workspace 53 volume of individual chain can be plotted, and their common reachable workspace can be computed using Boolean operations. It is also possible to perform optimization within the CAD package itself. The disadvantage of these CAD-based approaches is that they are limited to optimize the workspace of the parallel manipulator alone, while other performance measures are not easy to incorporate into the optimization process. Nonetheless, this provides a very quick way to compute the workspace of a parallel manipulator. However, it is important to note that a parallel manipulator designed for only for maximizing the workspace for a given set of parameters may not be a good design in practice [107-109]. It is possible that the design with maximum workspace has undesirable kinematic characteristics such as poor dexterity, stiffness, or manipulability. It is for this reason, optimization of workspace is usually accompany with other performance measures such as singularity-free workspace, uniform isotropy (manipulability) workspace, or workspace with highest stiffness measure. 4.2.1 Workspace Computation As shown in previous section, analytical workspace computation (spatial or planar) is not straight forward especially for parallel manipulator. In this thesis, we look at constant orientation workspace of parallel haptic device. Similar to the work by Wang et al. [106], Tanaka et al. [95], Zhen Gao and Dan Zhang [110], the workspace is computed numerically. For planar parallel manipulator, given a workspace grid, we evaluate its reachable workspace for a given end-effector position and orientation by evaluating the inverse kinematics of each chain, followed by checking if the joint angles satisfy the joint limits. The workspace area can be computed by multiplying the total reachable points in 54 Spatial workspace volume computation using contour and polyarea algorithm the workspace by the grid size. Alternately, in this work, the workspace is computed by the boundary point generated by contour of the workspace and computed using the polyarea algorithm, as shown in Figure 19. 1. Original data points. 2. Filtered surface points. 3. Create mesh & compute volume. Planar workspace area computation using contour and polyarea algorithm 1. Original data points. 2. Create contours. 3. Extract contour points & compute area w/ polyarea. Figure 19: Example of the computing the area of a circular planar workspace using contour and polyarea algorithm. This alternate method allows one to compute the workspace using the selected value at which the contour is being evaluated, and allow one to extract points represent the workspace boundary efficiently. But accuracy is still depends on the grid size that is being used to evaluate the workspace. We also use this method to compute the area of a slice of a workspace volume at a particular level. The other advantage of having the points that describe the workspace boundary is that these points can be used to export to CAD package to generate the corresponding 3D workspace for efficient computation. This process is illustrated by Cao et al. in [111]. 55 Spatial workspace volume computation using triangulated mesh generated from data points 1. Original data points. 2. Filtered surface points. 3. Create mesh & compute volume. Figure 20: Example of computing the volume workspace of a sphere using mesh generated from data points. Planar workspace area computation using contour and polyarea algorithm For spatial workspace, the process is almost the same, except now one need to evaluate a 3D grid. The total volume of the workspace can then be compute by multiplying the total reachable points by the grid volume. Again, the accuracy of this method is determined by the grid size. An alternate method that was attempted here were 1. Original data points. 2. Create contours. 3. Extract contour points & compute area w/ polyarea. to convert the cloud of data points that are inside the workspace to triangulated mesh. The algorithm first filter the data points such that only those points on the surface are kept. Using the Delauyney algorithm, one can create triangular mesh and the normal vector to each triangulated face, and the volume of the workspace can be computed using the triangular mesh. However, this alternate method did not significantly improve accuracy or efficiency of the workspace volume computation. Nonetheless, the mesh generated from the workspace volume gives a better visualization of the spatial workspace volume to the user and hence is used here. 56 4.2.2 Examples In this section, workspaces of several planar parallel manipulators were computed using the method described in the previous section. Specifically, the constant orientation workspaces of a 2-RRR (shown in Figure 21), 3-RRR (Figure 22 and Figure 23), and a 4RRR (shown in Figure 24) manipulator were plotted to show how modularly adding additional chain to a parallel manipulator further restricted the workspace of the parallel system. It is also important to notice that the pivoting location of the chain changes the workspace significantly, if other geometric parameters of the system stay the same. This can be seen visually from Figure 21 - Figure 24. From Figure 22 and Figure 23, we show the constant orientation workspace of a 3-RRR manipulator at two different end-effector orientation: end-effector orientation 0 , and 45 . For 0 , the largest workspace occur when the spacing between each chain is around 1.732, but with 45 , the largest workspace occur when the spacing between each chain is around 1.5. Also notice that even though the workspace is largest at 1.732, that particular placement might not be the best since the singularity occur right at the center of the workspace (see Figure 22(d)). (a) (b) (c) Figure 21: Constant orientation workspace of a 2-RRR planar manipulator changes as the distance of their bases varied from (s) L 1.5 to (c) L zero. 57 4.5 with end-effector orientation held at (a) (b) (c) Figure 22: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L Largest workspace exist when L 0.5 to L 4.5 with end-effector angle held at zero. 1.7321 . (a) (b) (c) Figure 23: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L 0.5 to L Largest workspace no longer exist at L 1.7321 . (a) (b) 4.5 with end-effector angle held at 45 . (c) Figure 24: Constant orientation workspace of a 4-RRR planar manipulator changes as the distance of their bases varied from L 2 to L 3.25 with end-effector angle held at zero. 58 4.3 First Order Kinematics Performance Measure: Manipulability The notion of manipulability – the ability to move and apply forces in arbitrary directions - has shown to be very useful in the analysis and design of both serial and parallel manipulators. Yoshikawa [27, 44] provided one of the first comprehensive mathematical treatment of manipulability for general open chains system (shown in Figure 25), while Salisbury and Craig [29] are credited with the first use of the manipulability measures in the design context in robotic mechanical systems. Since then, alternate formulations with different aspects of open chain manipulability have been investigated and proposed by a number of other authors in various applications. (a) (b) Figure 25: Velocity and force manipulability ellipsoid of a planar two link serial RR manipulator at various locations. Lee and Lee extended the concept of manipulability ellipsoid to a dual-arm system [112-113]. Since then, researchers including Chiaccio, Chiaverini, Sciavicco, and Siciliano [27, 114], Bicchi, Melchiorri, and Balluchi [26, 115-116], Wen and Wilfinger 59 [117-118], Park and Kim [31, 119] attempt to extend the idea of manipulability to general multi-limbs parallel systems. Lee [112] and Chiaccio [27] examined manipulability in systems when all cooperating arms have full mobility in their task space. Bicchi at al. [115] then extended the manipulability study to general cooperating arms, with arbitrary number of joints per arm. Melchiorri [120] then extended the framework to study force manipulability in fully actuated systems. Three papers presented at a same conference session look at manipulability for cooperative systems. Wen and Wilfinger [117] extended the concept of kinematic manipulability to general constrained rigid multibody systems that includes closed kinematic chains. Park and Kim [31] studied manipulability of closed chains that includes passive joints, under an elegant differential geometric framework. Bicchi and Prattichizzo [121] looked at the problem that including effects of redundancy and indeterminancy of kinematics, and introduced the notion of active and passive force manipulability. Later, they developed a systematic way of building the kinematic model of a system of cooperating arms with passive joints, and study the ill-posed kinematic redundancy and indeterminacy resulting from these system as an optimization problem [26]. For parallel robots, however, the optimization of a single performance index is often not sufficient. Usually, a combination of performance indices is used. The combined optimization of workspace and condition number of the manipulator Jacobian has been performed by several researchers, for example [122-124]. Application of these performance measures into design of parallel manipulator is not without any problem. Khan and Angeles [125], note the challenges arising from the lack of dimensional 60 homogeneity in the Jacobian matrix (from which performance indices such as manipulability, condition number, and isotropy index are derived). One way to solve this lack of dimensional homogeneity in the entries of the Jacobian matrix is to introduce the characteristic length [125]. Several researchers propose ways of determining this characteristic length, including Stocco, Salcudean, and Sassani [126], Mansouri and Quali [127]. Interesting enough, effort by Kim and Ryu to formulate a dimensionally homogenous Jacobian matrix of a Steward Platform shown that the optimal configuration of the Steward Platform has no difference than those using Jacobian that lack of dimensionally homogeneity [128]. Recently, Merlet [129] provide an unique perspective to study the performance of parallel robot. He showed that the performance indices that were used for serial manipulator such as manipulability, condition number, may not be suitable for parallel robot. For parallel robot, the determination of maximal positioning error (including their average value and their variance) were suggested as more appropriate global performance indices. Cadou, Bouchard, and Gosselin [130] proposed to use maximum rotation sensitivity and the maximum point-displacement sensitivity to study parallel manipulator. These two indices provide upper bound to the end-effector rotation and pointdisplacement sensitivity under a unit-magnitude array of actuated-joint displacement. However, this performance index can only apply to uniformly actuated manipulator (including redundantly actuated system), which limits its usage. From the above discussion, it is clear that performance indices derived from Jacobian of the robotic systems remains an active research topic, especially for parallel manipulators. From a design standpoint, however, manipulator design based on these 61 performance indices had shown success for general parallel manipulator design, as well as parallel haptic device design. 4.3.1 Manipulability Formulation In Chapter 3, we outlined the steps to formulate the Jacobian of an in-parallel manipulator using Twist-based Jacobian formulation method. The formulation to compute the manipulability can be found in any robotics textbooks and some of the references in the papers we referred to in previous section, hence we will only briefly discuss it here. The Singular Value Decomposition (SVD) of the Jacobian matrix and its geometric relationship offer further insights in characterizing the “(velocity) manipulability” of a manipulator. A m n Jacobian matrix JT can be transformed into the form of: JT with U TU UU T singular values i Im m and V TV 1 2 VT VV T (65) I n n , and is an m n matrix with on the diagonal: m n and U k diag , 2, 1 , k , 0k 1, , where k is the rank of JT , and k , 0n k (66) min(m, n) . The columns of U are the orthonormal eigenvectors of JT JTT , while the columns of V are the orthonormal eigenvectors of JTT JT . The decomposed matrices allow us to graphically interpret the geometric aspects of the manipulability characteristic of a specific manipulator at the task space. The Jacobian matrix JT is assumed to map a unit 62 sphere in the joint space to the corresponding ellipsoid in the task space, which we call the manipulability ellipsoid, as shown in Figure 26. Figure 26: An example of a manipulability ellipsoid. The columns of the U matrix, u1, u2, , uk can be interpret as the direction of the principal axes of the ellipsoid and the singular values, , 2, 1 , k is the corresponding magnitudes of the principal axes. The vector of the principal axes of the manipulability ellipsoid are u , 2u2, 1 1 , k uk . The u1 is the direction in which the manipulator can move most easily, and lease easily in uk direction. It is easy to realize that when this ellipsoid becomes a sphere, the end-effector can move with uniform ease in all directions, such configuration is known as the isotropic configuration. Hence, such SVD and the subsequent geometric interpretation as the manipulability ellipsoid become a very useful performance measures in manipulator design and optimization. There are several performance measures that derive from manipulability: Yoshikawa manipulability measures, condition number, and isotropy index. Yoshikawa manipulability measure [131] is the product of all the singular values. Hence it is proportional to the volume of the manipulability ellipsoid. The condition 63 number [132] is the ratio of the minimum and maximum singular values of JT , 1 / k . It is the ratio of the length of the major axis to the length of the minor axis on the manipulability ellipsoid. Hence it has a smallest value of 1 and tends to go infinity near singular configurations. In other words, the manipulability measure related to the magnitude of the ellipsoid and the condition number concerns about the shape of the ellipsoid. The isotropy index [133] (or Inverse of the condition number), on the other hand, is the reciprocal of the condition number, k / 1 . It is the ratio of the length of the minor axis to the length of the major axis of the manipulability ellipsoid. Hence it has an upper bound of 1 and a lower bound of 0, which is preferable. In our work, we mainly look at manipulability ellipsoid, and isotropy index. The manipulability measure, condition number, and isotropy index can be determined by eigenvalues of JT JTT . If is the vector of joint torques and F is the vector of external force applied at the tip, then from virtual work considerations, J T F . Assuming the manipulator is not at singular configuration, one can then write F J T . If we look at the mechanism as a device whose input torque produce output forces, the force manipulability ellipsoid can be determined by the egenvectors and eigenvalues of (JTJTT ) 1 . The eigenvectors of this force manipulability will be the same with the manipulability ellipsoid we defined previously, but the eigenvalues will now be 1/ ,1 / 1 2 , ,1 / k . It is clear, then the velocity and force manipulability is dual to each other, the direction of the largest eigenvalues of the velocity manipulability is the direction of the smallest eigenvalues of the force manipulability. The velocity/ standard manipulability reflects the uniformity in the mechanism‟s velocity gain; the force 64 manipulability ellipsoid reflects the uniformity in the force-torque gain [119]. This relationship can be seen from Figure 25. Because of this relation, we did not explicitly study the force manipulability, but its effect should be clear from the reciprocity relationship with velocity manipulability. We compared our manipulability ellipsoids with those given in Park and Kim [31, 119, 133], who study the manipulability of closed kinematic chain using a differential geometry framework and found that our result matched very well. Following work by Kim et al. [134], we separate the Jacobian matrix into orientation and position subJacobian and study them separately, rather than weighting them in some adhoc fashion (i.e. using the characteristic length). In particular, we study the position manipulability of five-bar system at two different actuated joint locations (shown in Figure 27) and a sixbar system with one fully actuated case and one over actuated case (shown in Figure 30), with comparison to results given in [119]. The size of the manipulability difference between them is due to scaling that used in the plotting of our results. The two cases were chosen to show that one can study the manipulability of a parallel on the joint, as well as any point on a rigid body of a link. Note that the five-bar system, is the best known parallel mechanism in robotics, having been popularized by Asada et al. [135]. Sometime also called the Pantograph is a popular 2-DOF planar haptic device, for example [136138]. The Pantograph is also the modular pieces that form the Quanser‟s 3-DOF planar Pantograph and 5-DOF Haptic Wand. Two different actuation schemes of a six-bar parallel manipulator (or can be viewed as a 2-RRR manipulator) are shown in Figure 28, one is fully actuated (Figure 28(b)) and the other one is redundantly actuated (Figure 28(c)). This shows that the 65 results match very well for fully actuated system as well as over actuated systems. More comparison of results can be found in the Appendix. st Result from [119] Both 1 joints actuated (a) (b) Both 2 nd joints actuated (c) Figure 27: Manipulability ellipsoid of a five-bar manipulator with two different actuated joints compared with (a) result obtained from [119], (b) five-bar with both 1st joint actuated; and (c) five-bar with both 2nd joint actuated. Result from [119] Fully Actuated Redundantly Actuated (a) (b) (c) Figure 28: Manipulability ellipsoid of a six-bar manipulator with two different actuation schemes compared with (a) results reproduced from [119], (b) six-bar with 1st and 2nd joint of the left chain actuated; and (c) six-bar with both 1st and 2nd joint of the right chain actuated. We also plot the manipulability ellipsoid of the five-bar system (with actuated joints located at two different locations) at two singular positions, shown in Figure 29. The manipulability ellipsoid of the six-bar system (with two different actuation schemes) at singular position is shown in Figure 30. The singular position of a five-bar system is 66 studied in [139]. Note that at these singular positions, the Jacobian is ill-conditioned and usually do not consider these solutions in analyzing the device performance. Both 2 Both base joints actuated nd (a) joints actuated (b) Figure 29: Five-bar systems manipulability ellipsoid at two singular positions (top and bottom) with two actuation schemes: (a) both actuated joints located at the 1st joint; and (b) both actuated joints located at the 2nd joint. Fully actuated Redundantly actuated (a) (b) Figure 30: Six-bar system manipulability ellipsoid at singular position. 67 Next, we systematically show the isotropy index of several common planar inparallel manipulators, namely the 2-RRR, 3-RRR, and 4-RRR manipulator. Before we do that, it is important to realize that the isotropy index changes as the choice of inverse solutions. For a RRR chain, given an end-effector position and orientation, there exist two solutions for each chain (conveniently called the „elbow up‟ and „elbow down‟ solution). The combinations of these two solutions can led to different configurations to the system, and the direction and magnitude of the manipulability ellipsoid depends on these configurations. Same end-effector position and orientation w/ different inverse solution (a) (b) Figure 31: For the same end-effector position and angle, manipulability ellipsoid can be different due to inverse solution of each RRR chain. As shown in Figure 31, two configurations are possible for a given end-effector position and orientation for a 3-RRR manipulator. Figure 31 (a) shows the „elbow‟ of each chain is pointing towards the „clockwise‟ direction (if we look at the center of the end-effector as the center of a clock), whereas in Figure 31 (b) the chain at the lower left is pointing toward the opposite direction. These two configurations led to different direction and magnitude to the manipulability ellipsoid computation, as shown in the 68 dotted blue line. The corresponding plot of isotropy index over the entire workspace is given in Figure 32. Note that the isotropy index is symmetry in Figure 32(a) and nonsymmetry in Figure 32 (b) due to the configurations selected in the inverse solution. In addition, the manipulability ellipsoid also changes with the ground location of the chain, as shown in Figure 33. So in this thesis, we try to also show the configurations whenever isotropy indices and manipulability ellipsoid are plotted to avoid such confusion and to have consistent comparison. Isotropy Index of 3-RRR manipulator (a) (b) Figure 32: Isotropy index/ Inverse of condition number over the entire workspace of a 3-RRR parallel manipulator changes for two selected inverse kinematics configurations. Isotropy Index of 3-RRR manipulator (a) (b) (c) Figure 33: Manipulability ellipsoid changes as well as workspace as configuration changes. 69 Isotropy Index of a 2-RRR, 3-RRR, 4-RRR manipulator (a) (b) (c) Figure 34: Comparison of Isotropy index / Inverse of condition number for a (a) 2-RRR, (b) 3RRR, and (c) 4-RRR system at selected configuration. 70 The isotropy index of a 2-RRR, 3-RRR, and 4-RRR manipulator (of selected configuration) is shown in Figure 34. To ensure consistent measures, all link lengths were set to 1 unit and spaces between each chain is 3.5 unit. We can see that at the center of their workspace, the 4-RRR has the highest isotropy index, followed by 3-RRR, and then 2-RRR. Hence, as we increase the number of chain in the planar RRR system, the manipulability increases. However, this gain in manipulability comes with the cost of reduction in workspace. Wu et al. [140] performed similar study using the condition number as their performance measures and obtained similar conclusion. 4.4 Second Order Kinematics Performance Measures: Stiffness When there is an external force and/or moment applied to the end-effector of a manipulator, it causes the end-effector to be deflected away from its desired location. The amount of deflection is a function of the applied force and stiffness of the manipulator [34]. The overall stiffness of a manipulator depends on several factors including size and the material used for the link, the mechanical transmissions, the actuators, and the controller. In our study, we assume that the major links are perfectly rigid and consider the mechanical transmission mechanisms and the servo systems as the main source of compliance. Generally, the stiffness analysis evaluates the effect of the applied external torque and forces on the compliant displacement of the end-effector. This property is defined through the stiffness matrix, which gives the relationship between the translational/ rotational displacement and the static force/ torque causing this transition. Generally, the approaches exist for the computation of the stiffness matrix is categorized into three groups: (i) Finite Element Analysis (FEA); (ii) Matrix Structural Analysis 71 (MSA); and (iii) Virtual Joint Method (VJM) [141-142]. The Virtual Joint Method, also referred to as “lumped modeling”, is based on the expansion of the traditional rigid body model by adding virtual joints that describe the elastic deformations of the manipulator components (links, joints, and actuators). This method is originated by the work of Gosselin [143], who evaluate parallel manipulator stiffness taking into account only the actuator compliance. Since we only look at haptic devices with rigid links, we will formulate the stiffness matrix using the Virtual Joint Method. More recent work by Chen, Ngo, and Kao, through series of investigations [144-146], proposed the Conservative Congruence Transform (CCT) as the appropriate mapping between Cartesian stiffness and Joint stiffness of a manipulator. The original joint and Cartesian stiffness mapping is only valid when there is no external load applied on the system. When there is external loading, there is an additional component in the CCT that account for the change in geometry via the differential Jacobian (Hessian matrix) of the robot manipulator. This component is capture in the effective stiffness matrix of the CCT. Stiffness and workspace are important design factors for a haptic device. Haptic device usually required software routine to control their stiffness as well as maintain a large workspace [71, 147]. These two factors are related to each other, and stiffness is expected to increase through kinematic parameters optimization [148-149]. However, the relationship between the stiffness and workspace is contrary to each other from previous findings [150]. Hence, optimization is usually needed to determine the optimum solution [148]. 72 4.4.1 Stiffness Formulation Let m be the dimension of the joint space, n be the dimension of the end-effector space, i be the toque or force transmitted through the i th joint, and corresponding deflection at the joint. For small deflection, we can relate i qi be the and qi by linear approximation: i ki qi (67) where ki is the joint stiffness constant. In matrix form, we can write Eqn.(67) as: k q [ 1, 2, where n , n ]T , q [ q1, q2, , qn ]T and k (68) diag[k1, k2, , kn ] is an n diagonal matrix. For serial manipulator (and parallel manipulator formulated using twist assembled Jacobian matrix), the joint displacement effector displacement q is related to the end- x by the Jacobian matrix J : x J q and the end-effector output force F is related to the joint torque (69) by the transpose of the conventional Jacobian matrix: JT F and q from Eqn. (68) and Eqn. (69) into Eqn. (70), one can get: Substituting F where K J T kJ (70) 1 K x (71) is called the stiffness matrix. To compute the stiffness ellipsoid, one would evaluate the eigenvectors and eigenvalues of the matrix K . One can easily see that 73 if k I , i.e. if the all the joint in the manipulator have the same joint stiffness of 1 N / m , the stiffness ellipsoid essentially overlapping the force manipulability ellipsoid. The equation relating the Joint space and Cartesian space stiffness is given by the conservative congruence transformation [144]: JT Kp J K Kg (72) where K is given by Eq. (71) and Kg is define as: JT n Kg i 1 T J f i JT f 1 f (73) JT f n 2 Kg is the product of the changes in geometry via the differential Jacobian matrix, JT / i and the externally applied load f . The Cartesian stiffness, K p , can be compute from Eq. (72): Kp JT 1 K Kg J 1 (74) The stiffness matrix is a mapping between the end-effector forces and its displacement. The ellipsoid associated with the stiffness matrix K p can be interpreted in a similar fashion to the manipulability ellipsoid. The major and minor axes are given by the eigenvalues and eigenvectors of K p , and indicate directions along which the mechanism as a structure is the most and least stiff. As with manipulability, it is inconsistent to combine quantities with different physical units, and hence they should be analyzed separately, as suggested in [134]. It is apparent there are two parts in the stiffness matrix of a mechanism. The stiffness that corresponding to K , is called the 74 „structural stiffness‟ by Li and Gosselin [151] (or „passive stiffness‟ by Kim et al. in [152] ), it is configuration dependent and proportional to the joint stiffness. The other part that corresponding to Kg , is call „force-affected‟ stiffness [151] (or „active stiffness‟ in the case of redundantly actuated parallel manipulator, where one can modulate the stiffness by changing the internal torque with additional motor, as in [152] ), it is as if the mechanism can be „tightened‟ or „relaxed‟ when there is external forces exerted on the mechanism such that the mechanism gain or lost some stiffness. Stiffness Ellipsoid of Two link RR Manipulator (a) (b) (c) (d) (e) (f) (g) (h) (i) Figure 35: Stiffness Ellipsoid of a two link RR manipulator as the two joint stiffness constants k1, k2 varied from k1 0.1, k2 0.9 to k1 0.9, k2 75 0.1 from (a) to (i). Obviously, stiffness ellipsoid of a manipulator is also configuration dependent and proportional to the actuating forces. In Figure 35, we show the stiffness ellipsoid of a two link planar RR manipulator at a given point, and shows that one can modulate the magnitude and direction of the stiffness ellipsoid by varying the stiffness value in the joint. Using our formulation, the „structural‟ or the „passive‟ stiffness map of a 3-RPR and a 3-RRR planar parallel manipulator were computed and the results were compared with those given by Gosselin [143], and Li and Gosselin [153]. Figure 36 shows the –, x –, and y –direction with end- result matches very well for the stiffness map in the effector orientation 0 for the 3-RPR system. Comparison of stiffness map with end- effector orientation 45 can be found in Appendix A.5. Stiffness Mapping of 3RPR Manipulator Stiffness in -direction Stiffness in x-direction 0.5 0.45 0.5 0.4 1.8309 1.2226 1.7394 98 80 02 00 0.35 0.35 1.3166 1.6478 1.4107 y-position 7 0.25 0.3 y-position 0. 5 0.45 1.1285 0.4 19 0.000 56 0.3 7 0. 00 05 61 9 0.0 01 40 49 0.35 0. 00 08 42 9 88 52 9 02 0.0 1 966 0 0.0 49 40 01 0.0 0.0 0.0 02 01 52 96 88 69 0.45 0.4 y-position Stiffness in y-direction 0.5 1.5047 1.5988 0.25 1.5563 0.3 1.4647 0.25 1.3732 1.6928 97 0.000 561 0.2 0.2 0.15 1.2816 0.2 1.7868 0.0011239 0.0014049 1.1901 1.8809 0.15 0.15 1.0986 0.0019669 0.0025288 0.1 0.05 0.25 0.1 0.3 0.35 0.4 0.45 0.5 x-position 0.55 (a) 0.6 0.65 0.7 0.75 0.05 0.25 0.1 0.3 0.35 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.7 0.75 (b) Figure 36: Stiffness maps of the 3-RPR manipulator in the (a) (c) y –direction with 0.05 0.25 0.3 0.35 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.75 (c) –direction; (b) x –direction; and 0 . Comparing result with comparing results with [143] (top row). 76 0.7 Stiffness Mapping of 3RRR Manipulator Stiffness in x-direction Stiffness in y-direction 0.5 0.5 22 35 .1 24 .87 8 14 .63 14 .63 41 0.25 41 17 .56 1 15 .80 65 18.0645 22 .58 06 68 20.32 26 29.354 8 0.2 33.871 0.15 0.3 15 .8 0 65 20 .3 22 6 27 .09 29.2683 7 70 .1 13 11.70 73 0.2 0.3 61 17 .5 0.25 13 .54 84 65 .80 15 14 .63 41 17 .56 1 21 .95 12 16 .0 976 20 .3 22 6 0.35 78 24 .8 24 .87 8 1 .56 17 12 .95 2 44 21 19 .0 y-position 51 .19 32 0.3 18 .0 645 15.80 65 0.4 19 .0 2 44 18 .0 64 5 8 78 20 .4 0.35 87 .83 24 24 .87 8 y-position 0.4 24 .83 22 .58 87 06 0.45 27 .8 0 49 49 .80 27 21.9512 26 .3 4 15 0.45 29 .35 27.0968 48 0.15 0.35 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.7 (a) 0.3 0.35 0.4 0.45 0.5 x-position 0.55 0.6 (b) 0.65 0.7 (c) Figure 37: Stiffness maps of 3RRR manipulator in the (a) x-direction, (b) y- direction, and (c) direction, with end effector angle – 0 . Comparing result with [153] (bottom row). Figure 37 shows the stiffness map comparison of a 3-RRR system in the and y –direction with end-effector orientation –, x –, 0 , and we can see that both results are similar. See Appendix A.5 for more comparison results for the 3-RRR system. Once we formulated the stiffness indices for these systems, we can study how the locations of the actuated joints affect the stiffness in the system. Using a 3-RRR planar parallel manipulator as an example, we can study the stiffness map of 3-RRR, 3RRR, and 3RRR system. Figure 38 (a)-(c) compare the stiffness map in these 3 systems, with end-effector angle 0 (and the kinematic configurations shown. With this configuration, the stiffness in the -direction is largest when the actuator is place at the 3rd joints, and is smallest when the actuator is placed at the 2nd joint. 77 Stiffness Map of 3RRR, 3RRR, 3RRR Manipulator (End-effector angle = 0 deg) (a) (b) (c) Figure 38: Comparison of the stiffness map of a 3-RRR manipulator in x-direction (2nd row), ydirection (3rd row), and -direction (4th row) with different joints actuated: (a) 3-RRR; (b) 3- RRR; and (c) 3-RRR manipulator. End-effector angle 78 0 . The stiffness in both the x- and y-direction, on the other hand, is largest when 2nd joints are actuated, but is roughly the same for actuating the 1st or 3rd joints. However, if the end-effector angle is held at 45 , the stiffness map changes (the resulting stiffness maps can be found in Appendix A.5). Such analysis could help a designer decide where to place the actuator (among other design considerations) to improve the stiffness of the parallel system mechanism. We can also look at how modularly adding additional chain to the system affects the overall stiffness of the entire system. (a) (b) Figure 39: With the modular formulation that we have shown, we can look at how adding an additional chain to the 3-RRR system (shown in (s)), now forms a 4-RRR system (as shown in (b)) changes the overall stiffness of the system. A 3-RRR manipulator and its workspace is shown in Figure 39 (a), by adding another chain to the system, essentially making it a 4-RRR system, as shown in Figure 39 (b), reduces its workspace. Figure 40 (a)-(c) show the stiffness map of the 3-RRR system and compare it with the 4-RRR system, when the end-effector angle is held at 0 . As one would expect, adding additional chain to the system increases the overall stiffness in 79 the x-, y- and -directions. The location of the added chain corresponding to the original chains, the location of actuated joints, and geometric parameters (link lengths, inverse kinematics) of the added chain affect the overall workspace, manipulability, and stiffness of the new system. These are the design parameters that one needs to decide based on its intended use. Note that for this comparison, we only evaluate the common workspace covered by both the 3-RRR and the 4-RRR system. Stiffness Index of a 3-RRR vs. 4-RRR manipulator (a) (b) Figure 40: The stiffness map in the (a) x-direction, (b) y-direction, and (c) (c) -direction of a 3- RRR system described in Figure 39(a) (top row), and the stiffness map after adding another chain (bottom row), the 4-RRR system shown in Figure 39(b). 80 The „passive‟ or „structural‟ stiffness measure that we compute here is determined by the end-effector position in static state. This stiffness is also proportional to the actuating joints only (Since the formulated Jacobian is in terms of active joints only in the Virtual Joint Method). Hence, the stiffness of a 4-RRR parallel manipulator with only three actuated chains (the remaining chain is passive) and a fully actuated 3-RRR parallel manipulator shown in Figure 41 has identical stiffness measure. The stiffness computation result is given in Figure 42. For this reason, it is not able to study the contribution the passive chains (or passive joints) to the overall stiffness of the system. (a) (b) Figure 41: (a) A 4-RRR planar parallel manipulator with only three chains actuated (the top left chain is passive); compare with (b) a 3-RRR planar parallel manipulator with same link lengths and locations as the 4-RRR manipulator, but with all chains actuated. Shown here with their corresponding constant orientation workspace. 81 Stiffness Index of a 4-RRR (w/ one passive chain) vs. a 3-RRR manipulator (a) (b) (c) Figure 42: The stiffness map of a 4-RRR planar parallel manipulator with only three chains actuated (top row), compare with a 3-RRR planar parallel manipulator (bottom row): (a) xdirection, (b) y-direction, and (c) -direction stiffness. Finally, we compare the stiffness map of 2-RRR, 3-RRR, and 4-RRR system in Figure 43. It is however, not easy to compare the performance across among them as the workspace as well as the configurations of the chains affect the overall stiffness performance. Nonetheless, we can just look at the center of their workspace, 4-RRR generally has the highest stiffness, followed by 3-RRR, and 2-RRR manipulator. 82 Stiffness Map of 2-RRR, 3-RRR, 4-RRR Manipulator (End-effector angle = 0 deg) (a) (b) (c) Figure 43: Comparison of stiffness map of a (a) 2-RRR, (b) 3-RRR, and (4) 4-RRR manipulator in x-direction (2nd row), y-direction (3rd row), and orientation 0 . 83 -direction (4th row) with end-effector 4.5 Chapter Summary In this chapter, we reviewed some of the performance measures that are widely used in the design of in-parallel haptic devices. In particular, using several planar inparallel manipulators as examples, we looked at workspace, manipulability (including velocity and force), isotropy index, and stiffness indices of these systems. We also showed design parameters (ground locations, link lengths, inverse solutions) in these systems that determine the performance measures that we studied here. In addition, we also showed how modularly adding addition chain to a system changes the overall workspace, manipulability, and stiffness of the system, by comparison of a 2-RRR, 3RRR, and 4-RRR system. In the following two chapters, we use these performance measures to study two haptic devices, the PHANToM 1.5 and the HD2. The examples we shown in this chapter include five-bar, six-bar, 3-RPR, 2-RRR, 3-RRR, and 4-RRR systems. We did not explicitly show the twist-based Jacobian formulation, as well as their inverse and forward kinematics since they are relatively straight forward. 84 5 Serial-Architecture Haptic Devices Study of commercial haptic devices using performance measures from the robotic community were performed by several researchers. Cavusuglu, Feygin, and Tendick [154] formulated the kinematics and dynamic equations for Sensable PHANToM 1.5 system, Silva et al. [155] study the kinematics, workspace, and manipulability of PHANToM OMNI system, Martin and Hillier study the kinematic and workspace of Novint Falcon [156]. We performed similar performance analysis with the PHANToM 1.5 system. In particular, we study the workspace, manipulability, and stiffness of this system. In particular, we look at the parallelogram sub-system that exist in the PHANToM 1.5 system and study the effects of this structure on the overall performance. Although some authors call this type of system a „hybrid‟ system, we refer it as a serial-type manipulator with added parallelogram sub-system. 5.1 Parallelogram Sub-Structure Recently, there has been considerable interest in constructing devices with additional closed kinematic-loop (e.g. planar parallelogram subsystem) to improve the overall stiffness, remove singularity and permitting relocation of the actuation [157-159]. Many commercial serial- and parallel-type haptic devices, shown in Figure 44, now incorporate such parallelogram linkages. Examples range from the Sensable‟s Phantom 85 Premium Series serial-architecture haptic devices and the parallel-architecture systems like Quanser‟s High Definition Haptic Device (HD)2 and MPB Technologies‟s The Cubic. A more comprehensive list of haptic devices (more than 20) with parallelogram structure included in their design, is tabulated in paper by Arata et al. [74]. Figure 44: Examples of commercial haptic devices with parallelogram sub-system within their kinematic chains. The inclusion of parallelogram structure in the linkages provides higher stiffness and improved rotational capability [157, 160], and has been used widely in the design of haptic devices [161-168]. Using the PHANToM 1.5 as an example, with this parallelogram structure, one can place the actuators at the base of the structure instead of placing it at the base of each links, thereby shifting most of the weight of the device to the base. As we show in next section, the inclusion of this parallelogram structure also changes the manipulability of the device. 86 To study the effect of parallelogram structure on manipulability, we compare the manipulability ellipsoid of a parallelogram linkage with a traditional two-link RR manipulator that it replaced. Using the modular composite approach that we shown in Figure 6 (In Chapter 2), there are other candidate haptic devices can be designed by modularly piecing together a PHANToM 1.5 haptic device, as shown in Figure 45. These haptic systems, can be systematically study using the method we shown here. Figure 45: Using PHANToM 1.5 system as a design block, various types of in-parallel haptic devices can be design by combining them in different ways. Note that device with ‘?’ on the side is not a currently available haptic device. 87 5.1.1 Formulation of Planar Parallelogram Sub-System Similar to [169-170], we formulate the planar parallelogram linkage shown in Figure 46(a) as constraint system of a RRR manipulator with an RR manipulator. The twist-based Jacobian of the RRR manipulator is given as: W J RRR W t1 W t2 t3 (75) Where 1 W t1 L1s L1c 1 L2s 1 L2c 1 L3s 12 L3c 12 W 123 t2 L2s L2c 123 W L3s 12 L3c 12 123 t3 1 L3s L3c 123 123 123 The twist-based Jacobian of the RR manipulator is given as: W J RR W t1 t2 (76) Where 1 W t1 ' 1 Ls ' 1 Lc ' 1 ' 1 1 ' 2 Ls ' 2 Lc W ' 12 L'2s t2 ' 2 Lc ' 12 ' 12 ' 12 To obtain the Jacobian of the combine system for computation of manipulability: JTa JTp L1s L1c 1 L2s 12 L2c 12 1 L2s L2c 12 L3s L3c 12 123 123 L3s L3c 123 0 123 L3s L3c 0 123 123 0 0 For constraints, we include the angular portion of the Jacobian [118]: 88 (77) (78) 1 JTa L1s L1c L2s 1 L2c 1 1 L3s 12 L3c 12 L2s L2c 1 L3s 12 L3c 12 (L'1c 123 1 JTp ( L'1s 123 L3c 123 ' 1 L'2s ' ) (79) 12 L'2c ' ) 12 1 L3s 123 ' 1 ( L'2s ' ) 123 (80) 12 (L'2c ' ) 123 12 The combine Jacobian of the system, is given by: J Sys where a 1 JT JC# JC JT a p p a (81) a . 1' Parallelogram sub-system formulation w y w 3 2 ' x P Lx Ly 3 L3 T L2' 2 P 2 P L2 1 y 2 y L1' 0 1 L1 0 1 x 1' x (a) (b) w Figure 46: (a) A mechanism with parallelogram structure can be modeled as a combination of a RRR manipulator with 2 another RR manipulator. (b) The manipulability ellipsoid of the combined system is shown with the manipulability of individual RR and RRR manipulator (assuming all joints actuated). L2 P 2 1 When the last linkL of the RRR manipulator is zero, with L2 y 1 0 L3 L1' L2 ' L1 , and 1 x 0 , the parallelogram structure reduced to a five-bar mechanism, which is what we 89 formulated previously using two RR manipulator. As such, the manipulability of this special case should be the same as the manipulability of a five-bar mechanism that have the same link lengths with the parallelogram structure and the base joint locate at the same position. Figure 47 verify that they are in fact the same. Left-RRR + Right-RR Left-RR + Right-RR (a) (b) (c) (d) Figure 47: Comparison of parallelogram structure manipulability ellipsoid formulation with a fivebar mechanism: (a) and (c) is the parallelogram structure where the last link is zero, and (b) and (d) is the five-bar mechanism. 90 The isotropy index of the planar parallelogram linkage is computed over the entire workspace, with L1 0.5 , L2 2 , L3 1.5 , L1' 1 , and L2 ' 2 , the isotropy index of the parallelogram linkage is given in Figure 48. Figure 48(a) show the surface plot of the isotropy index of parallelogram linkage and compare it with the isotropy index of an RR and RRR manipulator, computed using the same link length that made up the parallelogram linkage (assuming all the joints are actuated). It is apparent that the added parallelogram structure improved the isotropy index, compare to a RR manipulator. Isotropy Index Parallelogram Structure Isotropy Index 3 0.15 0.3 0.4 5 0.3 0.4 0.4 5 0.3 0.2 5 0.2 0.25 0.05 0.35 0.4 0.4 -1 0 x-position (a) 0. 1 0. 25 0.1 50 .15 0. 3 0. 2 0.1 0.2 5 0.2 0.05 0.1 0.3 0.15 0.2 0.2 5 0.2 5 y-position 0.10. 05 0.1 5 0.2 0.1 0.05 0.15 (c) -3 -2 -1 0 x-position 1 0.3 0 3 0.05 0.2 2 0.05 0.1 0.15 0.25 0.2 1 0. 3 0.2 0.25 0.5 0 x-position 25 0. 5 0.2 1 0.3 0.3 0.2 0.2 5 0.05 y-position 1.5 0. 05 0.15 0. 25 0.25 -1 0.25 0.1 5 0.2 0.2 0.1 0.05 -2 0.2 2 0.2 0.5 -3 0. 51 0.0 0.1 0.1 5 0.1 5 0.0 0.25 0.15 05 0. 2.5 5 0.0.1 0 0.15 1 0.1 5 5 0.2 1.5 0 0.2 0 0. .05 1 15 0. 2 0. 3 3 5 0.1 2 2 (b) 0.05 0.1 2.5 1 RRR Manipulator Isotropy Index RR Manipulator Isotropy Index 3 0.4 0.1 -2 0.3 0.5 -3 0. 35 0.25 0.25 0.1 0.25 0.2 3 0. 1 0 0.4 5 0.3 5 0.4 y-position 45 0. 5 0.4 1.5 5 0.2 45 0. 2 25 0. 0. 25 0. 4 0. 1 2.5 0.3 5 0.4 0.45 25 0. 2 3 (d) Figure 48: (a) Surface plot of isotropy index of RR linkage with parallelogram structure, RR manipulator, and RRR manipulator for comparison. The contour plot of each of their isotropy index is given in (b) for RR linkage with parallelogram structure; (c) for RR Manipulator and (d) for RRR manipulator. 91 5.2 Phantom 1.5 Haptic Device The DH parameters that describe the Phantom 1.5 system are given in Table 2 and Figure 49(a). To include the parallelogram structure in the formulation of the Jacobian of the Phantom Premium 1.5, another linkage that has one additional joint than the Phantom 1.5 is given in Table 3 and shown in Figure 49(b). (a) (b) Figure 49: The parallelogram structure in the Phantom 1.5 system modeled as combination of one (a) spatial RR manipulator with another (b) spatial RRR manipulator. D-H parameters of both systems are given in Table 2 and Table 3 . i i ai di i i ,ini 1 /2 0 L1 1 0 2 0 L2 0 2 0 3 0 L3 0 3 0 Note: 1 ,2 Active joints; 3 Passive joints. Table 2: Geometric Parameters for Phantom 1.5 i i ai di i i ,ini 1 /2 0 L1 1' 0 0 ' 2 / 2 0 ' 2a /2 0 2 3 4 Note: L2a 0 L2 0 L3a 0 ' 3 0 , Active joints; , Passive joints. ' 1 ' 2 ' 2a ' 3 Table 3: Geometric Parameters for the Parallelogram sub-system in Phantom 1.5 92 Physical (Measured) Joint Limits on PHAMToM 1.5 1 2 Maximum Angle Minimum Angle Range 90 deg -90 deg 180 deg 115 deg -65 deg 180 deg 50 deg 3 50 , 50 50 deg 30 100 / 95 ( 65 2 ), 65 100 deg 115 2 2 30 Table 4: Measured joint limits of the PHANToM 1.5 haptic system. The Jacobian of the Phantom system form by a spatial RR manipulator is given by: w [ wt1 J RR w w t2 t3 ] (82) where w s 0 0 1 t1 -s (L2c 1 c (L2c 1 2 c w L3c ) t2 c (L2s 23 1 s (L2s 23 1 0 L2c 1 w 2 L3s ) 2 L3s ) 1 0 c (L 3 s ) t3 23 1 23 s (L 3 s ) 23 L3c 2 1 c 0 L3c ) 2 s 1 1 L3 c 23 23 23 combined with a spatial RRR manipulator of the form: w J RRR [ wt1 w w t2 w t3 t4 ] (83) where w t1 -s (L2ac 1' c (L2ac 1' 2a 2a 0 0 1 L2c L2c s 1' c 2a 2 ' 2a 2 ' L3ac L3ac 2a 2 ' 3 ' 2a 2 ' 3 ' ) w t2 c (L2as 2a s (L2as 2a L2s 1' ) 1 0 L2ac 93 1' 0 L2s 2a L2c 2a 2 ' L3as 2a 2 ' 3 ' 2a 2 ' L3as 2a 2 ' 3 ' 2a 2 ' L3ac 2a 2 ' 3 ' ) ) s c w t3 s 1' 1' 0 c (L2s s (L2s 1 L2c w 2a 2 ' L3as 2a 2 ' 3 ' 2a 2 ' L3as 2a 2 ' 3 ' 1' 2a 2 ' 1' c L3ac ) t4 1' 0 c (L3as 2a 2 ' 3 ' s (L3as 2a 2 ' 3 ' 1' ) 1 L3ac 2a 2 ' 3 ' ) ) 2a 2 ' 3 ' The Jacobian of the PHANToM 1.5 can be formulated following the steps outlined in Section 3.3.1. In the following sections, we will study the workspace, manipulability, and stiffness map of this haptic device. 5.2.1 Workspace Analysis The workspace of the PHANToM 1.5 system is computed numerically using the link lengths given in [154], and the measured joints limits given in Table 4. The inverse kinematic solution is straight forward in this case but due to the parallelogram sub-system, the PHANToM 1.5 system can only have the „elbow-up‟ solution. Using the method outlined in Section 4.2.1 with a grid size of 0.01, the workspace of the device is computed and visualized in Figure 50. The total reachable workspace of the device is about 0.08m3. 94 (a) (b) (c) (d) Figure 50: (a) The reachable workspace of PHANToM 1.5 haptic device is about 0.08m 3, (b), (c), (d) are side view, top view, and front view of the workspace along with the haptic device. 95 5.2.2 Manipulability Measures From [171], we obtained L2 0.215m , L2a 0.0325m and L3 0.170m . L1 can be arbitrary value (since it is just an offset from the base). Using these values, the manipulability ellipsoid of the Phantom 1.5 system at one location is shown in Figure 52. From this figure, one can see that the resulting manipulability ellipsoid that include the parallelogram structure in the formulation differ from the spatial RR manipulator‟s manipulability in the x-z plane, as the ability to move in x-z plane is reduced, but have the same manipulability ellipse on the y-z plane (as they should). Figure 51: 3D view of the manipulability ellipsoid of Phantom 1.5 system, compared with the manipulability ellipsoid of a spatial RR system (without the parallelogram sub-system). 96 (a) (b) (c) Figure 52: With the addition of the parallelogram linkages, the manipulability ellipsoid of the Phantom 1.5 system at x = (a) 1.5; (b) 2.5, and (c) 3.5, compared with the manipulability ellipsoid of a spatial RR system. In all these cases, the sizes of the manipulability ellipsoids were scaled to half of its actual size. 5.2.3 Isotropy Index To study the manipulability of the PHANToM 1.5 over its entire workspace on the x-z plane (y = 0), the isotropy index of the system is computed and is shown in Figure 53(a). The isotropy index of a spatial RR manipulator with same geometry parameters is also plotted for comparison. We note that our results are consistent with the study performed by Cavusuglu et al [154]. Compare this result with the parallelogram subsystem formulation in planar case, it seem that the added subsystem did not improved the manipulability much. This is because now the manipulability ellipsoid is spatial, and the isotropy index does not take into account directional consideration, i.e. one cannot determine which direction the manipulator can move most easily by isotropy index alone. Nonetheless, we see that the addition of parallelogram sub-system did not drop the manipulability much compare to a spatial RR system. From the contour plot of the isotropy index shown in Figure 53 and the 3D surface plots shown in Figure 54(a)-(c), one can realize that with the addition of the parallelogram structure, the maximum 97 isotropy index moved to the center of the workspace instead of at the inner area of the workspace. This is a preferable characteristic as most of the haptic manipulations tend to remain at the center of the workspace to avoid hitting workspace singularity. Also notice that although the maximum isotropy index drop from 0.8541 to 0.791 with added parallelogram structure, the overall manipulability of the haptic device over the entire workspace is improved – the average isotropy index is 0.5353 for PHANToM compare to 0.3939 for a spatial RR manipulator. Phantom 1.5 Isotropy Index Spatial RR Isotropy Index 4 4 0.1 0.2 0.3 0.2 0.1 0.4 0.5 0. 40. 3 0.6 0.2 0.7 0. 3 0.7 0.2 0.3 z-position 0.1 0.6 0.4 2 0. 4 0. 0. 5 0.4 0 0.5 1 0.5 0.1 0.1 0.7 6 0. 0.2 0.04.3 1 0. 0.3 0.2 0.3 0.2 00..13 0.2 0.6 0.1 z-position -3 1 0. .2 0 4 0. 0.6 3 0. -2 4 0. 3 0. -1 -2 -4 -0.5 0 .240.5 00. 7 0. 5 0.103. -1 0. 8 0. 6 0..8 1.7 00 0.2 0 0.6 00.2 .04.5 1 0.2 0.6 0. 6 0.3 0.4 00..13 0.5 0.5 0.7 0.5 1 2 0.20.1 0.3 0.4 0.1 0.1 0.2 2 3 0.5 0.1 3 0.1 -3 0.2 0.1 1.5 2 x-position 2.5 3 3.5 -4 -0.5 4 0 0.5 (a) 1 1.5 2 x-position 2.5 3 3.5 4 (b) Figure 53: Isotropy Index of (a) a PHANToM 1.5 system compared to a (b) spatial RR manipulator over the entire workspace on the x-z plane (y = 0). 98 (a) (b) (c) Figure 54: (a) Isotropy index of Phantom 1.5 plotted against a spatial RR manipulator. The (b) maximum and average isotropy index of Phantom 1.5 is 0.7907 and 0.5353; and (c) the maximum and average isotropy index of a spatial RR manipulator is 0.8541 and 0.3939, over the workspace. 99 5.2.4 Stiffness Analysis Using the stiffness formulation outlined in Section 4.4.1, the stiffness maps of the PHANToM 1.5 system in the x-, y-, z-directions are plotted in Figure 55 (d)-(f). To study the effect of added parallelogram sub-system in the PHANToM 1.5, the stiffness map of a spatial RR manipulator is plotted in Figure 55 (a)-(c). In the y direction, their stiffness map are identical simply because in those direction the stiffness only come from the first joint in the system, which is the same for both systems. However, their stiffness maps are different in x, z directions. In general, the addition of the parallelogram structure reduces the overall stiffness on the end-effector, as shown in the surface plot of the stiffness map in Figure 56 (a) and (c), where the stiffness in x- and z- direction is reduced as parallelogram structure is added. This is because the joints that contribute to the overall stiffness computations (which are the active joints) now moved to the same location located at the base. However, it should also note that the stiffness map across the entire workspace is now more uniform with the addition of parallelogram structure in the system. 100 Stiffness Map of Spatial RR Manipulator Spatial RR System Stiffness in Y-direction Spatial RR System Stiffness in X-direction 4 0.734 69 0.62973 3 0.2381 0 0.5 1 1.5 2 x-position 2.5 3 3.5 0.5 1 0.11905 0.15476 z-position 0.083333 -2 0.9446 2.5 3 3.5 -4 -0.5 4 -4 -0.5 z-position (d) 1 0 0. 24 43 5 0.10714 0.071429 0.095238 z-position 0.32598 0.264 86 0.1 62 9 9 3 98 0.22 98 0.223 -2 0.16667 0. 18 33 7 0.2 03 7 4 0.20238 0.17857 0.5 0.32 5 79 -1 71 0.264 0.214 29 0 1.5 2 x-position 43 0.305 0.32579 -3 2.5 3 3.5 4 -4 -0.5 0 0.5 1 (e) Figure 55: Stiffness maps of spatial RR system in the (a) x 1.5 2 x-position direction; (b) y y direction; and (f) z 101 3 3.5 4 direction; and (c) direction, compare with stiffness map of PHANToM 1.5 in the (d) x z plane ( y 2.5 (f) z direction, on the x 4 6 83 2 0.1 3 62 0.20 4 3.5 2 54 0.14 9 62 0.1 3.5 0.20 3 62 0.2 23 9 8 07 85 0.2 6 61 34 0. 0.40724 3 0.083333 2.5 26 83 0.1 2 0.095238 1.5 2 x-position 0.11905 0.13095 0.19048 -3 0.14262 1 3 0.22398 1 0.15476 -2 0.18337 0.16299 2.5 Parallelogram Structure Vs. RR System Stiffness in Z-direction 4 0.13095 -1 -2 0.5 0.11905 0 0.14286 1 98 25 0.35 24 8 0.2 62 42 0.1 0 1.5 2 x-position 0.203 62 0.15476 49 44 6 0.2 264 8 0. 0.28524 2 0. 24 44 9 -1 -4 -0.5 1 0.28507 0.28507 0.2381 0. 22 41 1 -3 0.5 3 0.21429 0.19048 0.16667 3 0. 22 41 1 1 z-position 0.178 57 0.22619 4 3 0 0 (c) Stiffness Map of PHAMToM 1.5 Parallelogram Structure Vs. RR System Stiffness in Y-direction 2 4 0.8396 -3 (b) Parallelogram Structure Vs. RR System Stiffness in X-direction 4 0.203 74 0.524 78 0.62973.787 16 0 1.5 2 x-position (a) 0.095238 0.21429 0.19048 0.17857 0 0.157 43 0.3 67 0.26239 34 0 .314 87 0.36734 0.41982 0.472 3 0.19 0 48 z-position z-position -4 -0.5 4 0.071429 -3 0.10 4 96 0.157 43 0.20 9 91 0 -1 0.11905 -4 -0.5 0.22619 96 04 0.1 -3 1 0.13095 -2 0.209 91 0.15743 6 0.1049 0.10714 -1 9 91 0.20 -2 0.15476 87 14 0.3 0. 15 74 3 25 0.577 23 0.47 -1 0.41982 0.367 34 487 0.31 9 0.2623 0 0.17857 0.3 67 34 0.2 62 3 9 0.4723 2 0.14286 0 1 64 39 0.689 34 73 0.7 629 0. 0.41 9 82 8 47 52 0. 1 0.22619 82 19 0.4 2 4 96 83 0. 5 72 57 0. 4 67 3 0.3 3 0.472 2 0.095238 3 0.16667 0.15476 87 14 0.3 91 09 0.2 3 Spatial RR System Stiffness in Z-direction 4 0.22619 4 0 ). direction; (e) (a) (b) (c) Figure 56: Comparison of stiffness map of PHANToM 1.5 system with a spatial RR system in the (a) x-direction; (b) y-direction; and (c) z-direction. The addition of parallelogram structure reduces the overall stiffness in the system but at the same time allow a more uniform stiffness distribution. 5.3 Manipulability Optimization / Regulation In previous sections, we fixed joint 1 0 and study the manipulability and stiffness map of PHANToM 1.5 system on over its entire workspace in the x-z plane. If one would want to optimize the system, the size of the parallelogram seems to be the natural choice for optimization – how the size of the parallelogram affects the manipulability or stiffness of the system. To study the effect of the size of the parallelogram sub-system to the manipulability of the system, a parametric study were performed by changing the size of the parallelogram from L2a 0.2 , L2a 0.6 , to L2a Figure 57 (a)-(f). 102 1.0 . The results are shown in (a) (b) (c) (d) (e) (f) Figure 57: Manipulability ellipsoid (in blue color) of Phantom 1.5, (a) – (c) side view, and (d)- (f) isometric view. The size of the parallelogram does not change the magnitude or the direction of the manipulability ellipsoid. 2 P Lx Ly L3 3 T L2 L3a y 1 2 x L2a L2'2 z L1 3 w P y 1 0 x Figure 58: Study the effect of the parallelogram structure by replacing it with a fourbar linkage. 3 L2 2 1 2 3' L3 103 3 y 2a 1 L2a L2 x z 2 2' 3 L3a y From the parametric study shown in Figure 57, we notice that the Jacobian of the system does not depends on size of the parallelogram, namely L2a and L3a . The other way to modulate the manipulability is to change the parallelogram structure to a fourbar linkage, as shown in Figure 58. (a) (b) (c) Figure 59: The manipulability of the PHANToM 1.5 system changes with varying length of L3a from (a) L3a 0.8 ; (b) L3a 1.2 ; to (c) L3a 1.45 . To keep the study to a single variable design problem, we select L2 L2 ' , and vary the length of L3a . However, as we do this, the workspace of the PHANToM is constrained by the fourbar linkage. So we further constrain our problem to a region that is reachable within the design range of the L3a . A complete design problem can be set up to 104 include all the link lengths as design variable, and subsequently optimize the workspace, as well as manipulability, similar to the design of in-parallel manipulator [20, 29, 124, 134]. The optimization problem can be formulated as: Min f L3a L3a s.t : g1 : 0.95 L3a (84) 1.55 (85) where f L3a is the average isotropy index over the workspace shown in Figure 60(b): 1.75 x 3.0 , 0.5 z 2.5 , and y 0. The optimization problem is solved using standard optimization routine given in MATLAB (fmincon()). The result of the optimization shows that the optimized L3a 1.422 improved the average isotropy index in this selected region. The comparison of the isotropy index surface plot before and after the optimization is given in Figure 60(a). The average isotropy index improve to 0.6486, compare to 0.6242 with the parallelogram sub-system, with L3a 1.5 . From the contour plot shown in Figure 60(c) and (d), we can also see there is an overall improvement of the isotropy index in the selected workspace. From this simple example, we can see that it is possible to improve the overall isotropy index of the workspace by carefully design the link length parameters. More design variables can be included in to perform such optimization. 105 (a) PHAMToM 1.5 Isotropy Index 0 0.5 1 1.5 2 x-position 2.5 3 3.5 4 -0.5 1.8 2 (b) 3 -0.5 1.8 2 0.73747 33 36 0.8 0. 85 6 1 0.67816 0.65 8 39 0.71 77 2.2 2.4 2.6 x-position 0.6 38 62 0.816 56 0. 55 95 3 0.5 32 53 0.6 14 49 2.8 0.777 02 0. 73 74 7 1 0.618 84 0.56531 0.61449 0.647 28 0.663 68 0.59 8 77 71 0. 16 78 0.6 7 17 0.7 0 2.2 2.4 2.6 x-position (c) 93 57 0. 0. 65 83 9 0. 74 56 4 0.6 30 89 0.53 2 53 z-position y-position -3 -0.5 0.678 16 0.7177 64 45 0.7 25 29 0.7 7 93 0.69 89 30 0.6 0. 6 0.7 96 4 6 12 86 84 18 9 0.6 58 3 0.6 -2 0.757 25 0.5 0.777 02 0 07 80 0.6 89 30 0.6 1 0.73747 1 17 58 0. -1 7 00 68 0. 68 63 0.6 0.5 25 0.757 7 47 0.73 16 0.678 0 9 07 0.59 9 53 0.55 1 0.63089 28 0.647 0.61449 31 0.565 1 1.5 0.5981 2 2 86 63 0. 7 80 0 0.6 7 02 0.77 92 81 59 0. 1.5 0. 67 81 6 8 0.54 3 79 96 0.7 2 49 0.614 46 96 0.6 7 17 0.7 2 6 97 53 0. 4 88 61 0. 4 97 49 0. 9 30 8 0.6 25 29 0.7 Workspace Area for Optimization 0.87587 1 56 3 0.8 63 3 8 0. 6 65 1 8 0. 0.7 77 02 0.7 17 7 31 65 0.5 0.6 80 07 0.6 47 28 4 PHAMToM 1.5 Isotropy Index 2.5 0.7 62 04 0.5 39 7 6 2.5 z-position PHAMToM 1.5 Isotropy Index 5 2.8 3 (d) Figure 60: (a) Result of optimization to improve the isotropy index of the selected region shown in (b). The contour plots of the original and optimized isotropy index are given in (c) and (d). 106 6 Parallel-Architecture Haptic Devices 6.1 High Definition Haptic Device (HD2) The Quanser High Definition Haptic Device (HD2) can be viewed as an inparallel manipulator created by coupling the end-effectors of two Sensable PHANToM Premium 1.5 devices placed side-by-side to a common handle through a set of universal and revolute joints. The HD2 can now provide controlled motion- and force-feedback along 5-DOF compared to 3-DOF force-feedback provided by the original Sensable PHANToM Premium 1.5 device. The uncontrolled degree-of-freedom is the rotational direction of the handle about the axis along its length (i.e. z 6 direction in Figure 2). (a) (b) Figure 61: (a) Actual High Definition Haptic Device (HD)2 system; and (b) CAD model created in SolidWorks. 107 6.2 Forward Kinematics We assign rigid-body frames for each link following the convention for modified DH parameters. As shown in Figure 62, these frames were assigned as {0},{1}, ,{6} , from the base of the upper chain to the mid-point of the handle. For clarity, we only show the frame assignment for the links of the upper chain and describe the formulation process. A similar process was followed for frame assignment on the lower chain as {0'},{1'}, ,{6'} . We then develop the table of DH parameters (as shown in Table 1) which facilitates creation of the relative homogeneous transforms between the various frames in a systematic manner. x axis L1 z axis 0 p p xiˆ p y ˆj p z kˆ {0} {1} L2 z0 z1 L6 y0 z5 L3 x0 x1 z3 {2},{3} L0 x2 , x3 p zw z2 {4} {5} x5 z4 z6 , y w x4 {w},{6} Z0 zF yF {F } xF Figure 62: The HD2 Haptic Device and DH Frames assignment on the upper arm. Formulated using Conventional DH-Parameter frame assignment. Last Update: 10/18/2010 108 L7 x6 , xw L6 z5 Revolute Joint L3 x5 z3 Revolute Joint {4} {5} z4 {2},{3} x2 , x3 x4 Universal Joint L7 z6 , y w z2 zw {6},{w} x6 , xw Figure 63: Passive attachment (via universal joint and revolute joint) of the serial-chain’s endeffector to the common handle. i i ai di i i ,ini 1 /2 0 L1 1 0 2 0 L2 0 2 0 3 /2 0 0 3 0 4 /2 0 L3 4 /2 5 L6 /2 0 Formulated using Conventional DH-Parameter frame assignment.5 L7 6 0 0 Last Update: 04/18/2010 6 / 2 Note: 0 1 ,2 ,3 Active joints; 4 ,5 ,6 Passive joints. Table 5: DH Frame assignment of the upper chain of HD2. i i ai di i i ,ini 1 /2 0 L1 1 0 2 0 L2a 0 2 / 2 3 0 L2 0 2a /2 4 /2 0 0 3 0 5 /2 0 L3 4 /2 6 /2 L6 0 5 / 2 7 0 0 L7 6 0 Note: 1 ,2 Active joints; 2a ,3 ,4 ,5 ,6 Passive joints. Table 6: DH frame assignment of the upper chain of HD2, included the parallelogram sub-system. 109 L2a x axis L1 z axis 0 p p xiˆ p y ˆj p z kˆ {0} {1} L2 z0 L6 y0 z1 z5 L3a x0 x1 z z2 {2},{3} 3 x2 , xp3 {4} {5} x5 z4 z6 , y w x4 L7 L0 zw z2 {w},{6} x6 , xw Z0 zF yF {F } xF Figure 64: DH frame assignment of the ‘inner chain’ of HD2, to include the parallelogram Formulated using Conventional DH-Parameter frame assignment. structure in the 10/18/2010 formulation. Last Update: The DH parameters of the lower PHANToM 1.5 are same as those given in Table 5 and Table 6 except at the last row, of which it is L7 instead of L7 . The Jacobian of the system can be obtained using the twist-based Jacobian formulation method described in Section 3.3 systematically and symbolically. To include the parallelogram sub-system in the formulation, we treat the HD2 system as if it is made up of four chains. The DH parameters of the „inner chain‟, shown in Figure 64, are given in Table 6. 110 6.3 Numerical Inverse Kinematics Due to the small offset linkage ( L6 shown in Figure 63) at the end of the PHANToM that connects the universal joint and the handle, the analytical inverse solution cannot be obtained, this is further discuss in Appendix. This situation is similar to the case of a double universal joints with an offset wrist mentioned in [172]. For this reason, we solved the inverse kinematic numerically. -3 7 Cartesian Error at each location x 10 Upper chain error Lower chain error 6 Cartesian Error 5 4 3 2 1 0 0 10 20 30 (a) 40 50 60 70 80 90 (b) Angle profile of upper chain Angle profile of lower chain 2 2 1.5 1.5 1 1 Angle Profile (rad) Angle Profile (rad) 1 0.5 0 1 2 -0.5 3 -1 3 4 5 0.5 6 0 -0.5 -1 4 5 -1.5 2 -1.5 6 -2 0 1 2 3 4 5 6 7 (c) -2 0 1 2 3 4 5 6 7 (d) Figure 65: (a) The end effector position trajectory to be solve numerically; (b) the root mean square error of the actual position and solutions obtained using inverse solution; (c) the angles in the upper chain and (d) angles in the lower chain obtained from the numerical inverse computation. 111 This solution process is not ideal as it cannot be implemented in real time, but is adequate for performing analysis required for computing performance measures that we outlined in previous sections, where we only need to know the joint variables for a given end-effector position and orientation. The constraint equations consist of two parts. The first part required that the x, y, z position of the end-effector from both chains must be equal. The second part required that the z -direction of the rotation matrix from both chain must be equal, since they are along the longtitunal direction of the handle of the HD2. These six constraint equations can be obtained from the homogeneous transformation matrices. Fortunately, the way the two chains where combined together in the HD2 haptic allow only one solution in the numerical solution, which reduce the solution search considerably. As an example, the inverse solution of a circle with varying height is use to verify the effectiveness of the numerical inverse solution. The circle with the HD2 device is shown in Figure 65 (a). The results of the all the joint angles are given in Figure 65 (c) and (d), and the root-mean-square (RMS) error is given in Figure 65 (b). Another solution of a straight line in 3D is given in Figure 66. From these two examples, we can see that the numerical inverse kinematic provide very good results in most of the interior workspace region, while at places close to the workspace boundary the error increases. 112 RMS Error 0.035 Upper Chain Lower Chain 0.03 RMS Error 0.025 0.02 0.015 0.01 0.005 0 0 10 20 (a) 30 40 50 Angle profile of lower chain Angle profile of upper chain 2 2 1 1 2 1.5 2 1.5 3 3 4 4 5 1 5 1 6 0.5 Angle Profile (rad) Angle Profile (rad) 6 0 -0.5 0.5 0 -0.5 -1 -1 -1.5 -1.5 -2 0 10 20 30 60 (b) 40 50 60 -2 0 (c) 10 20 30 40 50 60 (d) Figure 66: The end effector position points to be solve numerically; (b) the root mean square error of the actual position and solutions obtained using inverse solution; (c) the angles in the upper chain and (d) angles in the lower chain obtained from the numerical inverse computation. 6.4 Workspace Analysis 6.4.1 Constant Orientation Workspace We look at the constant orientation workspace of the HD2 by numerically compute the reachable workspace of a point located at the middle of the handle of the HD2 while it is being held vertically. The physical joint limits of the system, shown given 113 in Table 7, were included in the computation. Similar to PHANToM 1.5 system, the limits on the 3 is dependent on (at 2 60 2 30 ), due to the parallelogram structure. Physical (Measured) Joint Limits on (HD) 1 2 Maximum Angle Minimum Angle Range 30 deg -30 deg 60 deg 105 deg -60 deg 165 deg 55 deg 3 50 , 55 55 deg 4 5 6 2 105 / 90 ( 60 30 2 ), 105 2 60 2 105 deg 30 No limit No limit NA 0 deg -180 deg 180 deg No limit No limit NA Table 7: Measured joint limits for the HD2 haptic device. 1 Arc generated when 2 3 30 105 4 4 3,min 1 Arc generated when 2 2,min 3 3,max 2,max Arc generated when 3 3 2 3 2 60 ( ) 3,min 2 30 55 105 / 90 ( 60 2 ) Arc generated when 2 2 2,max 3 3,min 3,max Figure 67: The circular arcs that describe the constant orientation workspace boundaries of the HD2 device at 1 1' 0 can be identified with circular arc equations (with radius and range of angle) for this position. As an attempt to compute the workspace using Gauss Divergence Theorem as in [100], the parametric circular arcs that describe the boundaries of the workspace of the 114 HD2 device can be uniquely defined at this position ( 1 vertically), shown in Figure 67. However, at other heights ( 1' 1 0 , and handle is held 1' 0 ), this relation cannot be determined easily and hence we resort to compute the workspace numerically. The planar constant orientation workspace of the HD2 device at various heights are computed numerically and plotted along with the device in Figure 68. As one would expect, the largest workspace is at the a height of 0.344 m, where 1 1' 0 , at around 0.2975m2. Moving away from this plane the planar workspace reduces. Figures showing the workspace from the side view and front view of the HD2 device can be found in the Appendix. Figure 68: Isometric view of the constant orientation workspace of the HD2 haptic device (handle is held vertically) at various heights. 115 6.4.2 Constant Orientation Spatial Workspace The constant orientation workspace of the HD2 haptic device is solved numerically and iteratively over the entire workspace. First we study the constant orientation workspace of HD2 where the handle is held vertically. The result is shown in Figure 69 for various views of the workspace. The workspace, computed numerically is about 0.956 m3. Note that this is also the largest constant orientation workspace attainable by the HD2 haptic device. (a) (b) (c) (d) Figure 69: Constant orientation workspace of HD2 shown with (a) side view; (b) front view; (c) top view, and (d) isometric view. At this orientation, the minimum and maximum reachable distance is from 0.08m to 0.56m in the x-direction, -0.66m to 0.42m in the y-direction, and 0.08m to 0.61m in the z-direction. The workspace volume is computed to be 0.956m3. 116 One of the intended applications of the HD2 haptic device is to perform biopsy simulation and training. We attached a biopsy needle at the handle and surgeon is expected to perform the biopsy operation, shown in Figure 70(a). In this case, it is worthwhile to know the workspace of the device when the handle is held in this position so that we could use this information pre-plan a training session or experiment. Hence, the workspace of the HD2 device where the handle is tilted 30 (shown in Figure 70(b) along the x-axis is computed. The results are shown in Figure 71(a) and (b). In this orientation, the total workspace is reduced to about 0.76m3 compared to 0.96m3 when the handle is held vertically. (a) (b) Figure 70: (a) a biopsy needle were attached to the handle of the HD2 haptic device performing virtual biopsy training; and (b) the corresponding constant orientation of the HD2 handle that approximate the needle angle that is being used for workspace study. If the handle is further rotated by 60 along the x-axis, the workspace is further reduced to about 0.51m3, as shown in Figure 72 (a)-(b). Other views of this workspace can be found in the Appendix. The workspace study is useful for pre-planning for preparation of haptic applications, and is an important design criteria based on it specific application [173-175]. 117 (a) (b) Figure 71: The constant orientation workspace of the HD2 haptic reduced to about 0.76m3 when the handle is held at an angle approximating the biopsy needle insertion angle (-30 degree in the x-axis). Shown here (a) and (b) are two different view angles of the resulting workspace. (a) (b) Figure 72: The constant orientation workspace of the HD2 haptic further reduced to about 0.51m3 when the handle is held at an rotated angle of -60 degree along the x-axis. Shown here are (a) isometric view and (b) front view of the resulting workspace. More views are presented in the Appendix. 118 6.5 Manipulability Measure First we study the manipulability ellipsoid of HD2 haptic using only the two chains (upper and lower chain) described by DH parameters given in Table 5. The manipulability ellipsoid at a given end-effector position is then plotted and shown in Figure 73 (a)-(d). Using this formulation, the manipulability ellipsoid indicates that the device can move along the y direction with least effort, and can resist forces with minimum effort along the x and z-direction [134]. (a) (b) (c) (d) Figure 73: Scaled manipulability ellipsoid of (HD)2 shown in (a) isometric view; (b) front view; (c) top view; and (d) side view. 119 We then look at the manipulability of the HD2 haptic device, formulated with the parallelogram structure in the system. The combined in-parallel system Jacobian now has four serial chains. In addition to the two chains formulate using DH parameters given in Table 5, additional two chains are modeled using the DH parameters given in Table 6. The inclusion of the parallelogram structure through these two additional chains, allow L3 to be actuated through the parallelogram located at the same location as the 2 nd actuator. As expected, this changes the device manipulability ellipsoid considerably, as shown in Figure 74, with four other views showing in Figure 75 (a)-(d). Figure 74: With the inclusion of parallelogram structure, the manipulability ellipsoid changes considerably for the HD2 haptic device. 120 (a) (b) (c) (d) Figure 75: Comparison of manipulability ellipsoids of HD2 haptic device with end-effector positioned at (2.5, 0, 3.44), modeled with (in blue color) and without (in yellow color) the parallelogram structure at various view (a) front view; (b) side view; (c) top view; and (d) Isometric view. From Figure 75 (a)-(d), with the addition of the parallelogram system and moving the actuator from the base of the 3rd link, the device now cannot move as easily as it used to in the x-y plane. And the z-direction becomes the direction where it can move most easily. At the same time, the device can now resist force more easily in the x-y plane. The manipulability ellipsoid at another end-effector position and angle is given in Figure 76 (a)-(d). 121 (a) (b) (c) (d) Figure 76: Comparison of manipulability ellipsoids of HD2 haptic device with end-effector positioned at (2.8, 2, 3.44) and tilted 60 deg along the x-axis, modeled with (in blue color) and without (in yellow color) the parallelogram structure at various view (a) front view; (b) side view; (c) top view; and (d) Isometric view. 6.6 Isotropy Index We choose to study the manipulability index over the entire workspace on x-y plane ( 1 1' 0 ) with the handle held vertically. The isotropy index/ inverse of condition number contour plot of the HD2 device (with and without parallelogram sub- 122 system) are given in Figure 77(a) and (b). Figure 77(c) shows compares the isotropy index of the HD2 device with and without the parallelogram sub-system. (a) (b) (c) Figure 77: Inverse condition number/ Isotropy index of HD2 haptic (a) with and (b) without including the parallelogram structure in the Jacobian formulation, evaluated at plane z=0.344m and the handle is held vertically. (c) Although the condition number without the parallelogram structure is better (higher number), the isotropy index with the addition of parallelogram structure is more uniform throughout the workspace. 123 6.7 Stiffness Measures Similar to manipulability study, we compute the stiffness indices map of the HD2 haptic device with and without the parallelogram structure in the formulation. Specifically, we look at the x-y plane where 1 0 . The resulting stiffness map of 1' HD2 formulated without the parallelogram structure is given in Figure 78 (a)-(f). The stiffness map of HD2 formulated with the inclusion of parallelogram structure is given in Figure 79 (a)-(f). Note that the x-, y-, z- and , , directions are corresponding to frame {0} , or frame {W } . The first thing to notice is that the stiffness in the -direction in both Figure 78(b) and Figure 79(b) is almost non-exist. This is because it is the joint along the axis of the handle, which is a passive joint. Similar to the case of PHANToM 1.5 system, where one can see the contour of the stiffness in the x-, y-, and z-direction here similar to those of PHANToM 1.5. With the inclusion of parallelogram, the stiffness in the x- and zdirection decreases. The results were similar to the result obtained for the PHANToM 1.5. On the other hand, the stiffness in the y-direction didn‟t change much with inclusion of the parallelogram structure. This is expected as the main contribution to this stiffness is from the 1st joint. The stiffness in direction increase considerably with the adding of the parallelogram since rotation on that axis mostly related to the 2nd joint and involves moving the parallelogram structure. The stiffness in direction on the other hand, reduces considerably since rotation along this axis did not involve the 2nd joint much. 124 2 Stiffness Map of HD without Parallelogram Sub-system Stiffness in -direction Stiffness in -direction 4 4 Stiffness in -direction 4 4.502 5e-00 7 0.954691.432 9.00 5 1e -0 07 2 2 0.35801 2 -2 -2 -2 2 50 4. 4 0.119 3 07 -0 5e -4 -4 0.4 0.6 84 17 05 2 0.8 1 47 29 1.33 15 y-position 4 19 3 0.1 08 42 0.2 0 y-position 0.3 58 01 y-position 67 38 0.2 31 5 13.33 68 0.9 7 00 e25 50 4. 0 0 4 10 12 0. 0.47 7 34 0.363 12 0.59668 -4 0.23867 0.35801 0.95469 -6 -6 1.1934 1.79 0 1 2 3 x-position 4 5 0 6 -6 4.5025e-0 07 1 2 (a) 3 x-position 4 5 6 0 1 2 3 x-position (b) Stiffness in X-direction 5 6 (c) Stiffness in Y-direction 4 4 Stiffness in Z-direction 4 4 1.2314 1.231 4 2 2 0.61569 2 0.46176 (d) 4 1. 45 36 y-position 1.03 8 3 2.076 6 y-position 5 6 0 1 2 0.37639 0.60 2 22 1.2044 y-position 0.6 22 98 3 x-position 9 56 61 0. -6 2 0.15392 -4 0.30784 -6 1 84 07 0.3 -2 -4 3 61 1.6 0 0 0.225 83 -2 0.15055 -4 0.376 39 0.45166 -2 0.52694 68 9 1.8 0.41532 0 0.30111 64 30 0.8 0 3 x-position 69 0.615 0.769 61 -6 4 (e) 5 6 1.3853 0 1 2 3 x-position 4 5 6 (f) Figure 78: Stiffness of (HD)2 in each directions, with formulation without considering the parallelogram structure in the upper and lower linkages. 125 2 Stiffness Map of HD with Parallelogram Sub-system Stiffness in -direction Stiffness in -direction 4 4 0.4 28 5 7 2 0 8 23 95 0.0 0.38095 0.19048 38 52 09 0. 0.0 47 61 9 71 0.285 0. 57 14 3 2 0 y-position y-position 0.047619 76 04 0.9 -2 0.476 19 19 76 0. 0.66667 -2 6 47 1.0 0.857 14 0.9 52 3 8 -4 0.952 38 -6 1 2 3 x-position (a) 0. 61 90 5 y-position 0.23 81 33 33 0.3 0.2 85 7 1 0.23 81 0.71 0.6419 290 5 0.428 57 0.33333 0.28 5 71 -4 1 2 3 x-position 4 5 6 0.28571 52 09 0.3 -6 0 3 x-position 4 5 6 0 1 (d) 2 0.142 86 -2 1 85 7 0.2 -6 2 0.095 238 0.238 1 0.28571 0.38095 7 85 1 9 8 42 0.4761 0. .523 0 19 0.26 1 0.19048 0. 07 14 29 9 61 47 0. 0 0.21429 0.23 81 0 3 x-position (e) 0.14286 8 23 0.11905 66 67 0.1 0.142 86 0 48 0.19 9 0.261 6 (c) 0.19048 y-position 2 0.333 33 0.38095 9 095 0.047 61 0. -4 5 0.2381 0.523 81 0.42857 19 76 04 0. 81 0.33333 4 3 0.02 9 42 1.1 Stiffness in Y-direction 4 -2 4 (b) Stiffness in X-direction 0 1 -6 0 2 8 47 6 23 1.0 1. 76 1.04 -4 4 5 6 (f) Figure 79: Stiffness of (HD)2 in each directions, with formulation including the parallelogram structure in the upper and lower linkages. 126 6.8 Trajectory Tracking The Jacobian of the HD2 system is formulated using the method described in Section 6.2. We verify the ability to simulate the system together with a trajectory following task [176]. A task-space controller was developed to allow the end-effector tip (position only) to track a moving spatial trajectory describe as x d and z d cos(2t ) , as t 0 2 R sin(t ); yd R cos(t ) ; , without constraining the end-effector angles. The controller takes the following form: Jv 1 xd K xd x (86) with an initial offset position of the end-effector (where frame {7} locate) by 0.25 in the z -direction of frame {0} . In Figure 80(a), the desired and the actual trajectories of the end-effector are plotted and we see the convergence to the desired trajectory. Figure 80(c) shows the angle profile of all the joints during the trajectory tracking and Figure 80(b) shows the trajectory tracking of the HD2 in the inertial frame. Figure 80(d) show the length of the handle throughout the trajectory tracking task, shows that the position and angular constraints were both satisfied. 127 Desired vs. Actual Trajectory Desired Actual 3.8 z-position 3.6 3.4 3.2 Actual Trajectory 3 3 Desired Trajectory 2.5 3.5 3 2 2.5 1.5 y-position 2 x-position 1 (rad) (a) (b) 0.05 0 -0.05 -0.1 1 1* 2 (rad) 0 1 2 3 4 5 6 7 8 3.4 3.2 2 2* 0 1 2 3 4 5 6 7 8 3 (rad) 3.2 3 3 2.8 3* 0 1 2 3 4 5 6 7 8 4 (rad) -1 4 -1.5 4* 5 (rad) 0 1 2 3 4 5 6 7 -1.2 8 5 -1.4 5* -1.6 6 (rad) 0 1 2 3 4 5 6 7 20 15 10 5 8 6 6* 0 1 2 3 4 5 6 7 8 Time (sec) (c) (d) Figure 80: (a) The trajectory tracking result shows the desired path and the traced path; (b) show the HD2 tracking the trajectory; (c) angle profile of all the joints in the system; and (d) the length of the handle throughout the trajectory tracking show the position and angular constraints were satisfied. 128 6.9 SimMechanics / MapleSim Model Our goal is to be able to design, analysis, prototyping, controller design and ultimately validation using a combination of virtual prototyping and hardware-in-the-loop testing. Our paradigm for rapid development, refinement and implementation of system design emphasizes: (i) development of the control scheme in a user-friendly, graphical, high-level block diagrammatic language (using MATLAB/Simulink) (ii) simulation, testing and refinement of the control system by virtual prototyping (using COTS simulation tools); (iii) rapid conversion of the refined control system into a form suitable for real-time execution (using Real-Time-Workshop/QuaRC) for hardware-in-the-loop testing, as shown in Figure 81. In this work, we developed a SimMechanics model as well as a MapleSim model that can be used as a plant model for HIL simulation [177]. Figure 81: Hardware-in-the-loop (HIL) design and testing framework of the HD2 haptic device. 129 Figure 82: SimMechanics model of HD2 haptic device with its corresponding VRML model for visualization. (a) (b) Figure 83: (a) MapleSim model of the HD2 haptic device with its corresponding 3D visualization model. 6.10 Chapter Summary In this chapter, we study the workspace, manipulability, and stiffness indices of an in-parallel haptic device – HD2. The HD2 is an example of a parallel haptic device created by piecing together two PHANToM 1.5 type serial manipulators that we studied in the previous chapter. We use the modular formulation that we present in previous 130 chapters, to formulate the Jacobian of the HD2 device. In particular, we study how the inclusion of the parallelogram sub-system changes the manipulability ellipsoid and their stiffness indices. With these performance measures, we can then perform optimization similar to those shown with PHANToM 1.5 device in the previous chapter, based on the specific application where we want to deploy the system. 131 7 Musculoskeletal Analysis-based Performance Measures Thus far, we have looked at various performance measures can be use to study a haptic device, focusing mainly on the device. However, when in use, a haptic device is always attached to a human user. This close coupling between a human user and the device suggests that we should include the human user in studying the performance of haptic devices. This is a challenging task: a human user holding a haptic device creates an additional closed loop constraint. This new system that consists of a human and a device, and the bi-directional transmission of force and moment affecting the performance of the overall system. Figure 84: When a human user holding on a haptic device, a geometric loop-constraint between them and the bi-directional transmission of forces and moments create challenges to evaluate the performance of the combined human-device interactions. 132 Often times, when designing a haptic device, the human itself is usually the last piece of the entire system to be put in the loop for evaluation. Human-in-the-loop studies tend to be set up as human interacting with physically prototyped devices coupled with human performance evaluation by statistical analysis [178-181]. Alternately, the human can be modeled as a mechanical admittance connected to the haptic device through spring and damper and subsequently a compensator maybe design to improve the performance of the device [182-184]. In a recent paper by Low, et al. [185] who proposed a framework through the use of musculoskeletal models, coupled with the dynamics of haptic devices for analysis of haptic rehabilitation device. In recent work, researchers realized the importance of incorporating human factors in the design of haptic devices, and start to incorporate human factors in the design process of haptic device. In previous chapter, we listed several researcher guidelines [78-80] that suggested the inclusion human in the evaluation of haptic devices. The goal is to find performance measures to allow a designer quantitatively evaluate the effect of the coupling between human-machine interactions. The coupling between human and machine can have different levels. In the position level, it is the study of common reachable workspace between a human and the haptic device. As seen in previous studies, haptic devices have limited operating workspace. For devices that have limited workspace but the task required a larger workspace, proper scaling of distance or repositioning of the device is used. Peer et al. [174] use a simplified human model (planar) to study common workspace that is reachable by both the human user and two haptic interfaces (Shown in Figure 85(a)), and 133 perform optimization to find out the ideal placement of the devices and human user for their application. Komoguchi et al. [173] use simplified human kinematic model to study human-machine collision detection as well as avoidance, as shown in Figure 85(b). In recent time, many Computer Aided Design (CAD) package offers accurate CAD mannequin with accurate anthropometric data and similar degree-of-freedom as a human user, e.g. NX Human from Siemens, and Creo Elements/Pro (formerly Pro/Engineer) Manikin Extension from PTC. This allows a designer to study design considerations such as workspace and ergonomic, within a CAD package where the device is modeled. (a) (b) Figure 85: (a) A simple planar human kinematic model created to include human user in optimizing the haptic device workspace, given in [174-175]; and (b) Collision avoidance and motion planning by modeling both the human and haptic device as linkages, given in [173]. In the velocity level alone, it is the determination of the best possible position between human and haptic device, such that both human (forearm) and haptic device can have maximum manipulability in the operation space. The challenge here is the human 134 model, which typically has much higher degree-of-freedom than a haptic device, is usually redundantly actuated. We have yet to see any work performed in this area even with a simplified human arm model. Human arm is known to have similar stiffness ellipsoid as a manipulator that is determined experimentally [186-188]. Similar study could be performed by studying the stiffness in both the human arm and the device, and their combined stiffness. In the force level, the interaction between human user and device is typically modeled as a spring-damper system, and study their dynamic interactions [182-184], and the stability of the haptic devices. 7.1 Haptic-based Virtual Rehabilitation Systems In the past decade, researchers [189-194] including our group [195-202] examined the application of robotic devices and automation technology to assist, enhance, quantify, and document physical rehabilitation tasks which now offers a useful template for sensorimotor training tasks. Functional evaluation methods tend to be limited to observation-based (and subjective) assessment of quantities such as dexterity, speed, coordination of one or both hands; joint range-of-motion, and strength using semiquantitative tests (such as Fugl-Meyer Index, Rivermead Motor Assessment Score). Quantitative (and objective) functional assessments are vital both from the viewpoint of initial evaluation as well as subsequent creation, progress monitoring and adaptation of an effective training regimen. Recently, much work has been done in developing haptic-based virtual rehabilitation systems [178, 181, 192, 203-206]. The haptic enabled virtual reality systems not only allowed patient to do physical therapy exercises and functional rehabilitation exercises, it also allow automatic and transparent patient data collection. 135 This allows a therapist to monitor progress, and change the exercise level of difficulty, and repeat evaluations over time. Example of haptic rehabilitation devices are shown in Figure 86. Similarly, adjustable and reconfigurable rehabilitation exercise machines are also being developed (see Figure 87 for some examples). Examples of Haptic Rehabilitation Devices (a) (b) (c) Figure 86: Example of haptic rehabilitation devices:(a) the MIT-MANUS for upper-body function rehabilitation after stroke, developed in MIT [207]; (b) the ‚Rutgers Ankle‛ Rehabilitation Interface for ankle rehabilitation developed in Rutgers University [208]; and (c) The haptic rehabilitation device for upper-limb motor function rehabilitation developed in Shibaura Institute of Technology [209]. Examples of Commercial Rehabilitation Devices (a) (b) (c) Figure 87: Examples of adjustable, reconfigurable rehabilitation exercise machines from BIODEX: (a) Upper Body Cycle; (b) System 4, and (c) BioStep Clinical Pro. Hence, it is beneficial to be able to create, test, evaluate and refine the haptic rehabilitation program to be deployed on such rehabilitation devices following a Virtual 136 Prototyping (VP) methodology [38, 210]. Virtual prototyping refers to functional simulation, quantitative performance analysis and iterative refinement of suitable products and processes in a virtual environment. By permitting realistic, accurate and quantitative testing of multiple intermediate models within a virtual environment, virtual prototyping, also known as Simulation-Based Design (SBD), has rapidly gained popularity and become a crucial part of most engineering design processes. Here, we examine the application of this VP methodology to study and refine the interactions of a patient with the rehabilitation equipment and regimen completely in a virtual environment. This is realized by the integration of engineering support tools (such as visualization, musculoskeletal analysis, and optimization) and structured therapist involvement within a Virtual Design Environment (VDE) to facilitate the evaluation and the subsequent refinement of the of rehabilitation regimen in the presence of variability. Such framework leveraging computational, visualization, and decision support tools has immense value for rapidly performing what-if type analyses, or parameter-sensitivitystudies. We use a case-study of a driving simulator [211-212] to illustrate these three aspects in more concrete terms. 7.2 Critical Challenges The adoption of a computational-analysis paradigm is beneficial from the viewpoint of allowing us to think of a studying a rehabilitation regimen in the form of a „design problem‟ [213]. In such a setting, there is a clear emphasis on systematic generation, evaluation and elimination of design choices. SBD tools in engineering have capitalized on setting-up and solving such design problems by coupling parametric models with functional simulation tools and optimization methods. 137 7.2.1 Computational Musculoskeletal Analysis Tools Many computational tools have been developed for kinematic and dynamic analysis of vertebrate musculoskeletal systems, building on an Articulated Multi-Body Systems (AMBS) framework [214]. Constrained musculoskeletal system-level computational models can be constructed modularly by placing physiologic and behavioral constraints on anatomical components (e.g., bone, muscle, and tendon). Such musculoskeletal analysis tools allow monitoring the internal human variables - a wide variety of biologically relevant data (from lengths, forces, reactions of muscles, tendons, joints to metabolic power consumption and mechanical work) can be accessed. Alternatively, other higher-level abstracted performance measures may be developed, allowing a therapist to directly monitor the effects of a regimen on target muscle groups and allow grasping of functional relationship of muscles. (a) (b) Figure 88: (a) AnyBody musculoskeletal modeling environment [202]; and (b) OpenSim open source software system interface [215]. 138 The ability to perform functional evaluations depends on the availability of functional simulation tools. However, the effectiveness of the functional simulation tools is limited by the extent of capture of the underlying physics, the modeling and analysis fidelities and ultimately computational power. In developing rehabilitation regimen, the effective simulation of interactions between the human user, the device and the environment becomes critical. Varying levels of such simulations are possible – e.g. several digital-human modeling tools such as Jack allowed kinematic modeling of human-device-environment interactions. The ability to monitor internal human variables, such as joint angles and torques, from the virtual avatar formed the basis of a usercustomized development of human-worn products [38, 210]. In recent times, a number of computational musculoskeletal-analysis tools such as SIMM [216] from MusculoGraphics Inc., AnyBody [217] from Anybody Technology A/S, and Human Body Model (HBM) from Motek Medical have become available. Open source software like OpenSim [215] also allow user to develop musculoskeletal models and perform dynamic simulation of movement. Musculoskeletal systems consist of numerous bones connected together at joints, activated by muscles and thus can be treated within framework of Articulated Multi-Body Systems (AMBS) [218]. Unlike traditional engineering systems, musculoskeletal systems inherently possess considerable redundancies, which can be resolved typically leveraging an optimization approach [218]. Several packages such as SIMM focus on the forward dynamic simulation problem while others such as AnyBody implement an inverse dynamic approach [217-219]. Such tools can now allow monitoring the dynamic of internal human variables (such as muscleforces and muscle activities). 139 Among these, the AnyBody Modeling System offered a convenient tool for modeling and analyzing various vertebrate musculoskeletal systems. The AnyBody musculoskeletal model is built up as a constrained articulated multibody system with rigid skeletal bones overlaid with multiple muscles that serve to both constrain and actuate the system. The governing equations can be obtained as the constrained dynamic equations of this articulated multibody system. However, the significant actuation redundancy creates indeterminacy for resolving muscle-actuator forces via inverse dynamic analyses. The indeterminacy in muscle force-distribution is resolved using an optimization approach. For AnyBody, it is the minimization of the maximal muscle activity subject to equality constraints (multibody dynamic equations) and non-negative muscle-force constraints [220]: f min G fmuscle max muscle,i f Ni , i 1, , nmuscle (87) Subject to : Cf = r (88) f muscle,i 0 (89) Many contemporary studies [221-223] have examined validation of Anybody forward- and inverse-dynamics simulations in various application-contexts. Additionally, the ability to resolve muscle activities/forces (beyond the more traditional joint forces and moments), and relate these directly to Electromyography data (EMG) was also extremely attractive from the view point of validation [221-222]. Hence, we use this „insight‟ into the human to help study the effects of variability. For example, a rehabilitation routine might aim to target specific muscle groups of a patient. A wide variety of musculoskeletal analysis results (ranging from lengths, forces, 140 reactions of muscles, tendons, joints, etc), can be accessed. However, this raw data needs to be further processed to create performance measures that can be of utility to the therapist. Hence, in this thesis, (i) peak muscle forces; (ii) average muscle forces; and (iii) muscle force fluctuation (difference between maximum/minimum muscle forces) will serve as our performance measure. Such performance measures allows a therapist to directly monitor the effects of a regimen on target muscle groups and allow changes to rehabilitation program based on patient condition. Alternatively, other higher level abstracted measures may be developed from the physical measurements of kinematic and dynamic quantities available from the model. Parametric Study of Bipedal Walking Figure 89: Systematic and parametric musculoskeletal analysis based study can be used to better understand bipedal walking frequency [200]. As an example, we have used the musculoskeletal analysis framework to parametrically study bipedal walking frequency [200]. Researchers have hypothesized that animal locomotory patterns seen are consistent with the resonant frequencies endowed by their musculoskeletal structures [224-225]. Further it is posited that systems succeed in minimizing their energy expenditure by moving at this resonant frequency. We systematically study this hypothesis in the specific context of bipedal locomotion. Researchers have sought to correlate the preferred strike frequency with the resonant frequencies of the model or used indirect measurement such as oxygen consumption, electromyography (EMG) to assess expended effort. In our study, we employed virtual 141 prototyping with a capable musculoskeletal simulation model to study the same hypothesis. We benchmark against the available literature and demonstrate that valuable insights can be obtained that can complement the current knowledge-base in biped locomotion [200]. Parametric Study of Bicep Curl Biceps Long Muscle Force Plot Biceps Short Muscle Force Plot 160 D.Mass D.Mass D.Mass D.Mass D.Mass D.Mass 140 D.Mass = 10 Kg D.Mass = 8 Kg 0 Kg 2 Kg 4 Kg 6 Kg 8 Kg 10 Kg 100 D.Mass = 6 Kg 80 D.Mass = 4 Kg 60 300 D.Mass = 8 Kg 250 D.Mass = 6 Kg 0 Kg 2 Kg 4 Kg 6 Kg 8 Kg 10 Kg D.Mass = 4 Kg 150 D.Mass = 2 Kg 100 D.Mass = 0 Kg 20 (a) = = = = = = 200 D.Mass = 2 Kg 40 0 D.Mass D.Mass D.Mass D.Mass D.Mass D.Mass D.Mass = 10 Kg 350 Muscle Forces, (N) Muscle Forces, (N) 120 = = = = = = D.Mass = 0 Kg 50 0 0.1 0.2 0.3 0.4 0.5 0.6 Time, (sec) 0.7 (b) 0.8 0.9 1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 Time, (sec) 0.7 0.8 0.9 1 (c) Figure 90: (a) Parametric bicep curl study on a simplified upper-arm/shoulder musculoskeletal model and muscle force profiles for both (b) biceps short and (c) biceps long muscles. In another effort, a parametric bicep-curl study on the Upper Arm/ Shoulder musculoskeletal model was created to allow healthcare students (including OT/PT) in a Gross Anatomy class to systematically study relationships between form and function [202, 226]. Pedagogically, this example (Shown in Figure 90) is highly relevant in its ability to illustrate system-level effects of various components. But more importantly, we were able to extend it easily to explore the effects of variability of geometry, dynamics, and regimen on musculoskeletal performance. Specifically, they could study variability of bicep force-performance due to parameter variations in (i) initial elbow joint position (ergonomic); (ii) the mass of the dumbbell (device); and (c) the elbow-joint velocity (regimen). Fig. 3(b) and (c) depict the variation in Bicep short and Bicep long muscles for a parametric variation of dumbbell mass between 0 kg to 10 kg (while keeping the 142 initial elbow-angle at 90 and elbow-velocity at 45 rad / sec ). In addition to the quantitative results, such virtual experimentation can help develop the students‟ intuition about musculoskeletal performance trends. Parametric designs simplify the process of systematic generation of choices especially in a computer-based implementation. However, the appropriate selection of design variables which are both biomechanically relevant and are of significant to the therapist poses challenges. Design variables can encompass geometry as well as regimen parameters for the user-device interaction. In the case of rehabilitation device refinement, geometric parameters could include individual user geometries such as limb length, etc [227-228], device properties for customizable devices [38, 210], as well as properties determined by the ergonomics of placement of the user with respect to the device. Regimen parameters such as dynamically adjustable springiness, damping, as well as frequency, amplitude of a desired motion can also serve as design variables. These design variables can be used to systematically explore the space of feasible alternatives. Coupled with selection of a suitable performance measure, an optimization problem can be setup to determine the „best‟ set of values for a rehabilitation regimen, form a potentially large set of choices thereby serving as a decision-support for a therapist tool. 7.3 Performance Measures A wide variety of musculoskeletal analysis results (ranging from lengths, forces, reactions of muscles, tendons, joints, etc), can be accessed. However, this raw data needs to be further processed to create performance measures that can be of utility to the designer (to improve the design of haptic devices) or therapist (to design patient rehabilitation progress). It is important to note that one should use the performance 143 measure that is being validated with the computational package. For example, in AnyBody, the quantity „muscle-activity‟ has shown to correlate well with EMG measurement while in HMB by Motek, the computed muscle forces have shown good correlation with EMG data. 7.3.1 Muscle Forces In the study of a haptic motor rehabilitation program [201-202], (i) peak muscle forces; (ii) average muscle forces; and (iii) muscle force fluctuation (difference between maximum/minimum muscle forces) serve as our performance measure. Such performance measures allows a therapist to directly monitor the effects of a regimen on target muscle groups and allow changes to rehabilitation program based on patient condition. Alternatively, other higher level abstracted measures may be developed from the physical measurements of kinematic and dynamic quantities available from the model. 7.3.2 Muscle Activity In the absense of direct measures, the amounts of energy expenditure, is correlated and estimated through EMG and oxygen consumption measures or inverse dynamics techniques. The electrical signal associated with the contraction of a muscle is a commonly-used measure of muscle activity [229-230] and can be captured as an Electromyogram (EMG). Similarly, the localized measurement of oxygen consumption, measured by blood-gas measurement, reflects the energy consumption in that muscle. Recent studies have shown good correlations of EMG and local oxygen consumption to external load as well as to muscle forces [231]. In another study [200], we use a measure called “muscle-activity” as a fraction (between 0 and 1) of maximum voluntary muscle144 contraction-force. In other words, the activity at a given point in the gait cycle indicates the percentage of maximum muscle force that can be exerted. Muscle activity profiles obtained from AnyBody have been shown to correlate very well with EMG data [232]. We can further post process this “activity level” to determine (i) peak values indicative of the range of muscle force required (since all begin at activity level 0); (ii) average value over a gait cycle (used to develop metabolic energy consumption estimates). As noted previously, the muscle activity profile is comparable to the EMG data, which in turn relates to muscle contraction forces and energy cost and hence can be used as a metric for our study. For example, Figure 91 shows the muscle activity profile of the „right muscle‟, a muscle modeled in our simple pendulum study [200] and its corresponding average muscle activity (shown in next section) at frequencies 0.2Hz and 0.4Hz. Right Muscle Activity in One Swing Cycle 0.09 0.08 Muscle Activity @ Freq = 0.2Hz 0.07 0.06 Muscle Activity @ Freq = 0.4Hz Activity 0.05 Average Muscle Activity @ Freq = 0.2Hz 0.04 0.03 0.02 Average Muscle Activity @ Freq = 0.4Hz 0.01 0 -0.01 0 0.1 0.2 0.3 0.4 0.5 0.6 Scaled Time, sec 0.7 0.8 0.9 1 Figure 91: Right muscle activity profile (solid) and average muscle activity (dashed) for one pendulum swing cycle used in [200]. 145 7.4 Case Study: Haptic Motor Rehabilitation Programs As an example to show the suggested integrated musculoskeletal simulation framework that allow one to study human-device interaction, we use a motorrehabilitative Haptic Virtual Driving Environment (hVDE) [211-212] to illustrate various aspects of the study of variability in a rehabilitation regimen. This hVDE was developed by integrating a commercial-of-the-shelf (COTS) force-feedback steering wheel with parameterized rehabilitation therapies to serve as a home-based inexpensive personal-movement-trainer (as shown in Figure 92(a)). (a) (b) (c) Figure 92: (a) the actual setup that is being modeled and studied[212]; (b) Front view of the user and driving wheel (rehabilitation device) arrangement in the case study; and (c) the corresponding top view of the same arrangement. Specifically, users are instructed to perform structured-rehabilitation-exercises in the form of driving-tasks along prescribed parametric paths while holding the driving wheel with one- or both-hands. However, a very important question arises in such a setting – what is the effect of variability in terms of (i) how the equipment is setup (ergonomic); and (ii) how the exercise is performed on the actual functional rehabilitation 146 (regimen). These questions are critical to evaluate the effectiveness of a rehabilitation device. Our framework allows the therapist to answer these questions quantitatively using a range of (i) parametric sweep; and (ii) optimization studies to be discussed next. Ultimately, such quantitative evaluation is intended to help the therapist to determine the „best‟ combination of the two for a specific user. This framework brings together several tools within a VDE as shown in Figure 93. The VDE consists of a Central Therapist Interface with which additional human musculoskeletal modeling and optimization modules interact. 7.4.1 Central Interface However, the interface for interaction with the AnyBody system remain very inaccessible to a non-computational user due to the lack of both programming knowledge and numerical-analysis background to take advantage of the „computational testing paradigm‟ (see Figure 88(a)). In this respect, Anybody system offers a convenient Application Programming Interface (API) to facilitate access to the underlying computational engine from external programs which we exploit by creating a Graphical User Interface (GUI) which allows for visualization and provides a restricted means for user interaction with AnyBody settings (e.g. using sliders). Further, using the GUI, the therapist can select the rehabilitation regimen, the objective function, as well as customize patient geometry information. The therapist can then perform parametric studies by varying the appropriate design variables. 147 Figure 93: Paradigm of our framework for VP of rehabilitation device: A MATLAB GUI that serves as the Center Interface that allows the therapist to examine the effects of different regimen and determines the ‘best’ regimen based on user’s geometric information. The AnyBody engine is responsible for the computation of the muscle forces, while the optimization routine is handle using MATLAB’s optimization toolbox. 7.5 Musculoskeletal Models The rehabilitation environment model (user and device) is setup using the AnyBody Modeling System. Parametric models of the human patient can be extracted from libraries and potentially customized to reflect the specific patient characteristics (the bones maybe re-dimensioned or the peak muscle forces can be customized). Similarly, 148 the model of the rehabilitation device can be created within the same framework. The model of the user and the model of the device can thus be co-simulated and the obtained results can be used for refinement. (a) (b) Figure 94: The human musculoskeletal model, the rehabilitation device, and their interaction used in the case study were modeled using AnyBody Modeling System. Shown here is the (a) Side view and (b) Front view of the model. The musculoskeletal model, shown in Figure 94(a) and (b), can help a therapist model, analyze and visualize various aspects the patient‟s interaction with the surrounding environment. If desired, such as model can also be customized with specific patient geometry and muscular characteristics. However, for computational efficiency, we restricted the human model to the upper-body bone-tendon-muscle from the pelvis up much like others [233]. 149 7.5.1 Parametric Studies The five geometry parameters involved in this study, xw , yw , zw , Rw ,w , pertain to the ergonomics of placement of the wheel with respect to the patient. These are spatial location of the center of the steering wheel ( xw , yw , zw ) ; the radius of the steering wheel ( Rw ) ; and the tilt angle of the wheel with respect to the global y-axis ( w ) , as shown in Figure 92(b) and (c). We can then perform parametric study for each of selected parameters within the reachable region of the user. This process allows one to analyze the effect of one parameter while others were held fixed. While any of these five parameters can be used as design variables, we choose to study only two of them ( xw , w ) in this study. The speed and amplitude at which the patient turns the wheel serve to parameterize the regimen of the rehabilitation. Increasing the speed of the turning allows a quicker completion of the regimen but requires greater muscle forces for completion of the task. In this paper, the rehabilitation regimen is such that the patient turns the wheel at an angular velocity of 30 / sec for amplitude of 330 turn, thus it takes 11.0 seconds to perform such task (shown in Figure 95(a)-(d)). (a) t=0sec (b) t=4.5sec (c) t=8.0sec (d) t=11.0sec Figure 95: (a)-(d) The hand placement on the steering wheel at different time instant in the parametric study, view from the top of the virtual model. (a) The initial position; (b)-(c) the intermediate positions; and (d) the final position. 150 In particular, we perform parametric sweep of xw (corresponding to the distance of the steering wheel in front of the user) from 0.15 m to 0.45 m, at a constant angular velocity of 30 / sec for a total of 330 turn. The results are shown in Figure 96(a) and (b). On the other hand, to study how the muscle force changes with respect to the steering tilt angle, we fixed the steering wheel at (0.25, 0.1,0.25) and vary the tilt angle from 0 to 60 . The results are shown in Figure 97(a) and (b). (a) (b) Figure 96: (a) Surface and (b) 2D plot of the maximum combine muscles force for a patient to turn a wheel at a constant angular velocity of 30deg/sec (with 330 deg total movement), for a 0 to 60 degree tilted wheel angle, with wheel center located at (0.25, -0.1, 0.25), measured in meters. From Figure 96(a) and (b), we see that the peak of the combine muscle force decreases from about 0.92N to 0.72N as the steering tilt angle increases from 0 to 60 (in region where time = 3 sec to time t = 6 sec). This corresponds to the motion where the hand is at the lower region of the wheel, as shown in Figure 95(b)-(c). On the other hand, the combined muscle force profile corresponding to different xw positions is given in Figure 97(a) and (b). In this study, we varied the xw location from 0.15 m to 0.45m while the yw and zw are located at -0.1m and 0.25m respectively. The wheel tilt angle is 151 maintained at 0 deg (no tilt) for this study. From Figure 97(d), we can see that as the wheel being placed farther away from the user, the maximum muscle force drops from 1.43N (at x = 0.15m) to 0.96N (at x = 0.41m). (a) (b) Figure 97: (a) Surface and (b) 2D plot of the maximum combine doing the same motion, this time with 0 deg tilted angle (no tilt) , for wheel x position varied from 0.1m to 0.45m (far or close in front of the user). 7.5.2 Optimization Studies An optimization study was created to help the therapist to determine the best possible placement of the device (within the feasible region) and the regimen for specific objective. Two different objective functions were studied: (a) Maximum combined muscle force fluctuation; and (b) Average combined muscle force. For simplicity, we choose only two design variables in this problem, the tilt angle w and wheel‟s x-position xw . Thus, both objective functions are function of the x-position and tilt angle, f ( xw ,w ) . Hence, the general form of the optimization problem may be written as: Min fi xw , w xw , w 152 (90) s.t : g1 : 0.15 xw 0.25 (91) g 2 : 0 w 60 Since only two design variables are being studied, the function space of these two objective functions can be explicitly plotted. Figure 98(a) and (b) are contour plots of the function space with relatively few data points used (13 data points in the tilt angle direction and 6 data points at the x direction). (a) (b) Figure 98: (a) Function space of maximum combined muscle forces fluctuation as the objective function and steering wheel’s x location and tilt angle as the design variables; and (b) Function space of average muscle force as the objective function and steering wheel’s x location and wheel’s tilt angle as the design variables. Although the resulting contour of the function space does not look very smooth, these contour plots give us pretty good estimate of the function space and a reasonable good estimate for the location of the design variables. From these two function plots, we can obtain the general rules: (i) to minimize the muscle force fluctuation, one would like to place the wheel closer to the user with a higher tilt angle; (ii) to minimize the 153 combined average force used in performing the rehabilitation routine, one would place the wheel farther away from the user and with small or no tilt angle. Thus, the setup of the optimization allows creation of a decision-support tool for the therapist. For larger problems, with more design variables, the visualization based solution process finding the „best‟ solution may not be viable. However, one can capitalize on the availability of powerful numerical optimization techniques to achieve similar outcomes. 7.5.3 Discussion We presented an integrated musculoskeletal simulation based design framework that facilitates the rapid design and refinement of the ergonomic and regimen of a haptic motor rehabilitation device. The integrated Virtual Design Environment serves as a decision support tool for a therapist to determine the „best‟ rehabilitation program for a particular user leveraging design and computational tools from musculoskeletal analysis, optimization and visualization. Our preliminary result, demonstrated with a case study of a motor-rehabilitative Haptic Virtual Driving Environment (hVDE). In particular, we present our design framework using a case study which demonstrates the practical implementation of our framework with preliminary result. Much work needs to be done in terms of (i) creating a more seamless VDE interface for the therapist; (ii) developing quantitative performance measures that are well balanced computationally and are of significance/ relevance to the therapist; and (iii) applying the framework to a wider range of settings. We are actively pursuing all these aspects in our current work. 154 Although the case study used to demonstrate our framework is a driving rehabilitation device, the basic ideas and the design framework in this paper are applicable to the design of variety of other devices that are working closely with human user (such as exoskeletons, assistive devices, haptic devices and wearable devices), where musculoskeletal measure of the user is critical. Such a framework could potentially be used to (i) quantitatively study the effectiveness of existing rehabilitation devices, and subsequently refinement of such devices; and (ii) quantitatively study the effect of variability in the user and/or device to the effectiveness of the rehabilitation regimen, i.e. the robustness of a particular rehabilitation regimen. 155 8 Discussion and Future Work The performance of the Haptic-User-Interface (HUI) that allows a human user to interact with virtual environment to realize a typical haptic simulation, plays a very critical role in determining the „realism‟ of a haptic rendering (referring to Figure 2). In this thesis, we studied and analyzed various haptic device design-architectures with the goal of improving the haptic rendering realism. We focused on formalizing a design methodology, emphasizing modularly piecing together serial-type haptic devices to create in-parallel haptic devices, that even today is being employed (albeit informally) to realize various commercial- and researchin-parallel haptic devices. This methodology builds on the framework used to design and analyze cooperation in multiple articulated robotic systems (as seen in legged walkers, multifingered hands and multiple-arm grasping) to realize robust and flexible composite systems. From an engineering design standpoint, this approach is also attractive by allowing the reuse of part (individual module), and new device design can be created by piecing these individual modules in various way (shown in Figure 6 and Figure 45). Finally, from an analysis standpoint, it is attractive that we can systematically study system performance on the basis of individual chain/module performance characteristics. This is the approach that we systematically espouse in this dissertation. 156 However, the overall system performance depends on design choice, the nature of the individual arms, as well as their interactions. Using PHANToM 1.5 and HD2 as our examples, we study the workspace, manipulability, and stiffness of these two systems systematically. At the same time, we were able to quantify the effects of this added parallelogram sub-system to performance improvements (manipulability and stiffness) as well as the entailed drawbacks (such as reduction of overall workspace) in both PHANToM 1.5 and HD2 systems. With these performance measures, a designer can then systematically and quantitatively analyze, design, and evaluate haptic devices based on specifications required by the intended haptic applications. It is also important to note that we only discussed three performance measures (workspace, manipulability, and stiffness) in this work. In defining these performance measures, we also make several assumptions such as the actuators are perfect, joint stiffness are linear and perfectly constant, electronics components are perfect and manufacturing tolerance is perfect. Other design considerations such as manufacturing cost, ease of control, interference of linkages, are likely important but are not pursued in our work. Traditionally, the study of haptic-user-interfaces focuses only on the individual device performance (workspace, manipulability, and stiffness) alone. For devices working closely with human user (rehabilitation devices, exoskeletons, haptic devices, assistive device, etc.), it is important to be able to characterize the performance-effects of the close coupling to a human, early in the design phase. „Human-in-the-Loop‟ (HIL) testing typically entails physical human-factors testing of human user responses to various experimental situations. In our effort, we examined use of a virtual 157 musculoskeletal analysis framework in which to co-simulate the human and the device, and extract quantitative performance measures from the human musculoskeletal model. These quantitative performance measures can then be used for performing optimization on human-device interactions as demonstrated using a haptic motor-rehabilitation regimen refinement scenario. However, a more careful study that includes the forces and moment exerted by the haptic device and how it affects the muscle forces should be set up to study the haptic interactions between the human and the haptic device. 8.1 List of Contributions The contribution from this work can be categorized broadly in two parts: (i) quantitative and systematic performance measures formulation for haptic devices evaluation; and (ii) quantitative performance measures to study human-machine interactions using musculoskeletal analysis framework. Specifically, the work can be summarized as follow: We demonstrated a framework that allow systematically formulate the Jacobian of in- parallel system by combining contribution from individual chain. This formulation also allows symbolic computation of the Jacobian. We demonstrated our formulation and compared our results with the current literature, and subsequently use it to study the workspace, manipulability, and stiffness of PHANToM 1.5 and HD2 haptic devices. In particular, we study the effect of an added parallelogram sub-system, which is commonly found in various haptic devices, to the overall manipulability and stiffness of the entire system. 158 We summarized various possible variants of haptic device by modularly piecing a modular haptic device. It can be seen, from Figure 45, many candidate haptic devices can be synthesized using the PHANToM 1.5 as a modular building block. We examined a musculoskeletal analysis framework to allow a designer to quantitatively study and evaluate devices that are to be used in intimate contact with a human user. Quantitative performance measures obtained from musculoskeletal models can be used to study design parameters that relates human-machine interactions and showed the feasibility and effectiveness of this framework. 8.2 Future Work As with any research, we have unearthed a host of research questions requiring further investigations. The presence of the offset link between the universal joint and the handle for the HD2 haptic device complicates (and prevents) development of the analytical forward and inverse-kinematics (as noted in Appendix A.7). Elimination of this offset offers potential for analytical kinematic solution and could be pursued. Formulation of the analytical workspace expression would also greatly aid the optimization of device workspace. Our results matches very well with Park and Kim [119], who study the manipulability of in-parallel system in a differential geometry framework. Bicchi and Prattichizzo [26, 115, 121] studied manipulability of parallel systems with a finely partitioned Jacobian for a nuanced study of various types of singularities and could help provide further insight into the system performance. 159 We shown the systematic and quantitative performance evaluation for various in- parallel haptic devices – however it is necessary to set up multi-objective optimization to simultaneously optimize several performance measures (that some time can be conflicting to each other). This can be implemented easily using the quantitative performance measures that we defined here but was not attempted here due to penalty of time. The musculoskeletal analysis framework provides a good starting point for quantitative coupled-performance analysis of human-haptic device interactions but needs to be better explored with more detailed case studies. 160 Bibliography [1] K. W. Lilly, Efficient dynamic simulation of robotic mechanisms, 1 ed.: Springer, 1993. [2] S. McMillan, "Computational Dynamics for Robotic Systems on Land and Under Water," Ph.D., The Ohio State University, Columbus, Ohio, 1994. [3] M. Honegger, et al., "Adaptive Control of the Hexaglide, a 6 dof Parallel Manipulator," in IEEE International Conference on Robotics and Automation, 1997, pp. 543-548. [4] K. L. Lee, "Design of a High Stiffness Machining Robot References Arm using Double Parallel Mechanisms," in IEEE International Conference on Robotics and Automation, 1995, pp. 234-240. [5] T. J. Lindem, "Octahedral Machine With a Hexapodal Triangular Servostrut Section," US Patent 5401128, 1995. [6] P. C. Sheldon, "Six Axis Machine Tool," US Patent, 1995. [7] G. R. Dunlop and T. P. Jones, "Position Analysis of a 3-DOF Parallel Manipulator," Mechanism and Machine Theory, vol. 32, pp. 903-920, 1997. [8] K. Nakashima, "A Six-Axis Motion Base and a Study of a Parallel Manipulator," Advanced Robotics, vol. 8, p. 609, 1994. [9] M. Clément, et al., "On the development of the agile eye: mechanical design, control issues and experimentation," IEEE Robotics and Automation Society Magazine, vol. 3, pp. 29--37, 1996. [10] N. Mimura and Y. Funahashi, "A New Analytical System Applying 6 DOF Parallel Link Manipulator For Evaluating Motion Sensation," in IEEE International Conference on Robotics and Automation, 1995, pp. 227-333. [11] C. L. Collins and L. G. L., "The Singularity Analysis of an In-Parallel Hand Controller for Force-Reflected Teleoperation," IEEE Transactions on Robotics and Automation, vol. 11, pp. 661-669, 1995. [12] I. L. Slutski, Remote Manipulation Systems: Quality Evaluating and Improvement: Kluwer Academic Publishers, 1997. 161 [13] L. Birglen, et al., "SHaDe, a new 3-dof haptic device," IEEE Transactions on Robotics and Automation, vol. 18, pp. 166--175, 2002. [14] M. Y. Lee, et al., "Development of kinematic/kinetic performance tools in the synthesis of multi-degree-of-freedom mechanisms,”" ASME Journal of Mechanical Design, vol. 115, pp. 392-402, 1993. [15] M. Y. Lee, et al., "Applications of kinematic/kinetic performance tools in the synthesis of multi-degree-of-freedom mechanisms " ASME Journal of Mechanical Design, vol. 116, pp. 452-461, 1994. [16] F. C. Park, "Optimal robot design and differential geometry," ASME Journal of Mechanical Design, vol. 117, pp. 87-92, 1995. [17] K. van den Doel and D. K. Pai, " Performance measures for robot manipulators: A unified approach," The International Journal of Robotics Research, vol. 15, pp. 92-111, 1996. [18] H. Asada, "A Geometric Representation of Manipulator Dynamics and its application to Arm Design," ASME Journal of Dynamic Systems, Measurement and Control, vol. 105, pp. 131-135, 1983. [19] O. Ma and J. Angeles, " Optimum design of manipulators under dynamic isotropy conditions," in 1993 IEEE International Conference on Robotics and Automation, 1993, pp. pp. 470-475. [20] C. A. Klein and B. E. Blaho, "Dexterity measures for the design and control of kinematically redundant manipulators," The International Journal of Robotics Research, vol. 6, pp. 72-83, 1987. [21] J. K. Salisbury and J. J. Craig, " Articulated Hands: Force Control and Kinematic Issues," The International Journal of Robotics Research,, vol. 1, pp. 4-17, 1982. [22] J. Angeles and C. Lopez-Cajun, "Kinematic Isotropy and the Conditioning Index of Serial Manipulators," The International Journal of Robotics Research, vol. 11, pp. 560-571, 1992. [23] K. Zanganeh and J. Angeles, "A Formalism for The Analysis and Design of Modular Kinematic Structures," The International Journal of Robotics Research, vol. 17, pp. 720-730, 1998. [24] Y. Nakamura, Advanced Robotics: Redundancy and Optimization. Reading, MA: Addison-Wesley Publishing Company, 1991. [25] C. Gosselin and J. Angeles, "A Global Performance Index for The Kinematic Optimization of Robotic Manipulators," ASME Journal of Mechanical Design, vol. 113, pp. 220-226, 1991. 162 [26] A. Bicchi and D. Prattichizzo, "Manipulability of Cooperating Robots with Unactuated Joints and Closed-Chain Mechanisms," IEEE Transactions on Robotics and Automation, vol. 16, pp. 336-345, 2000. [27] P. Chiacchio, et al., "Global Task Space Manipulability Ellipsoids for MultipleArm Systems," IEEE Transactions on Robotics and Automation, vol. 7, pp. 678685, 1991. [28] A. Bicchi, et al., "On the Mobility and Manipulability of General Multiple Limb Robotic Systems," IEEE Transactions on Robotics and Automation, vol. 11, pp. 215-228, 1995. [29] F. Park and J. E. Bobrow, "Geometric optimization algorithms for robot kinematic design," Journal of Robotic Systems, vol. 12, pp. 453-463, 1995. [30] F. C. Park and J. W. Kim, Manipulability of Closed Kinematic Chains. Dordecht: Kluwer, 1996. [31] F. C. Park and J. W. Kim, "Manipulability and Singularity Analysis of Multiple Robot Systems: A Geometric Approach," in IEEE International Conference on Robotics & Automation., Leuven, Belgium, 1998, pp. 1032-1037. [32] S. K. Agrawal and B. Roth, "Statics of in-parallel manipulators," Journal of Mechanical Design, Transactions of the ASME, vol. 114, pp. 564-568, 1992. [33] J.-P. Merlet, Parallel Robots, 2 ed.: Springer, 2005. [34] L.-W. Tsai, Robot Analysis: The Mechanics of Serial and Parallel Manipulators. NY: Wiley, 1999. [35] C. Innocenti and V. Parenti-Castelli, "Exhaustive Enumeration of Fully Parallel Kinematic Chains," in ASME Dynamic Systems and Control Conference, 1994, pp. 1135-1141. [36] F. Rehsteiner, et al., "Putting parallel kinematics machines (PKM) to productive work," Annals of CIRP, vol. 48, pp. 345-350, 1999. [37] C. Gosselin and J. Angeles, "Singularity Analysis of Closed-Loop Kinematic Chains," IEEE Transactions on Robotics and Automation, vol. 6, pp. 281-290, 1990. [38] V. Krovi, et al., "Design and Virtual Prototyping of Rehabilitation Aids," ASME Journal of Mechanical Design, vol. 121, pp. 456-458, September 1999. [39] V. Krovi, "Design and Virtual Prototyping of User-Customized Assistive Devices," Ph.D., Mech. Engg. and Applied Mech, University of Pennsylvania, Philadelphia, PA, 1998. 163 [40] X. Yun and N. Sarkar, "A unified formulation of robotic systems with holonomic and non holonomic constraints," IEEE Transactions on Robotics and Automation, vol. 4, pp. 640-650, 1998. [41] G. Campion, et al., "Structural properties and classification of kinematic and dynamic models of wheeled mobile robots," IEEE Transactions on Robotics and Automation, vol. 12, pp. 47-62, 1996. [42] J. Merlet, "Redundant parallel manipulators," Lab. Robot. Automat., pp. 17-24, 1996. [43] M. A. Nahon and J. Angeles, "Force Optimization in Redundantly-Actuated Closed Kinematic Chains," in IEEE International Conference on Robotics and Automation, 1989, pp. 951-956. [44] J. F. O‟Brien and J. T. Wen, "Redundant actuation for improving kinematic manipulability," in IEEE International Conference of Robotics and Automation, 1999, pp. 1520-1525. [45] T. Ropponen and Y. Nakamura, "Singularity-Free Parameterization and Performance Analysis of Actuation Redundancy," in IEEE Int. Conf. Robotics Automation, 1990, pp. 806-811. [46] K. Y. Tsai and D. Kohli, "Modified Newton-Euler computational scheme for dynamic analysis and simulation of parallel manipulators with applications to configuration based on r-l actuators," in ASME Design Engineering Technical Conference, 1990, pp. 111-117. [47] C. D. Zhang and S. M. Song, "An Efficient Method For Inverse Dynamics of Manipulators Based on the Virtual Work Principle," International Journal of Robotic Systems, vol. 10, pp. 605-627, 1993. [48] H. Cheng, et al., "Dynamics and Control of Redundantly Actuated Parallel Manipulators," IEEE/ASME Transactions on Mechatronics, vol. 8, pp. 483-491, 2003. [49] M. Uchiyama, et al., "Hybrid Position/ Force Control for Coordination of A Twoarm Robot," in IEEE International Conference on Robotics and Automation, Raleigh, NC, 1987, pp. pp. 1242–1247. [50] J. Duffy, "The Fallacy of Modern Hybrid Control Theory that is Based on Orthogonal Complements of Twist and Wrench Spaces," Journal of Robotic Systems, vol. 7, pp. 139-144, 1990. [51] Y. H. Liu and S. Arimoto, "Distributively controlling two robots handling an object in the task space without any communication," IEEE Transactions on Automatic Control, vol. 41, pp. 1193 -1198, 1996. 164 [52] X. Yun and V. Kumar, "An approach to simultaneous control of trajectory and interaction forces in dual arm configurations," IEEE Transactions on Robotics and Automation, vol. 7, pp. 97-109, 1991. [53] Simulink, Simulink User Manual. Natick, MA: Mathworks Inc, 2001. [54] R. Hui, et al., "Mechanisms for Haptic Feedback," in International Conference on Robotics and Automation, Nagoya , Japan 1995, pp. 2138 - 2143. [55] H. Iwata, "Pen-based Haptic Virtual Environment," in IEEE VRAIS, 1993, pp. 287-292. [56] H. Iwata, "Artificial Reality with Force-feedback: Development of Desktop Virtual Space with Compact Master Manipulator," ACM SIGGRAPH Computer Graphics, vol. 24, pp. 165-170, 1990. [57] K. Waldron and J. Schmiedeler, "Kinematics," in Springer Handbook of Robotics, B. Siciliano and O. Khatib, Eds., ed: Springer, 2008, p. 1611. [58] K. H. Hunt, Kinematic Geometry of Mechanisms. Oxford: Clarendom Press, 1978. [59] R. Murray, et al., A Mathematical Introduction to Robotic Manipulation: CRC Press, 1994. [60] A. G. Erdman, et al., Mechanism Design: Analysis and Synthesis, 4th ed ed. vol. 1. Upper Saddle River, NJ Prentice Hall, , 2001. [61] R. M. Murray, et al., A Mathematical Introduction to Robotic Manipulation: CRC Press, 1994. [62] M. G. Mohamed and C. M. Gosselin, "Design and Analysis of Kinematically Redundant Parallel Manipulators with Configurable Platforms," IEEE Transactions of Robotics, vol. 21, pp. 277-287, 2005. [63] C. P. Tang and V. N. Krovi, "Manipulability-Based Configuration Evaluation of Cooperative Payload Transport by Mobile Manipulator Collectives," Robotica, vol. 25, pp. 29-42, 2007. [64] F. C. Park, "Optimal Robot Design and Differential Geometry," ASME Journal of Mechanical Design, vol. 117, pp. 87-92, 1995. [65] J. H. Lee, et al., "Design of A New 6-DOF Parallel Haptic Device," in ICRA Seoul, Korea, 2001, pp. 886 - 891 [66] F. Gosselin, et al., "Design of A New Parallel Haptic Device for Desktop Applications," in World Haptics, Pisa, Italy, 2005, pp. 189 - 194. 165 [67] J.-W. Kim, et al., "Design of A Novel 3-DOF Parallel-Type Haptic Device with Redundant Actuation " in International Conference on Control, Automation and Systems, Seoul, Korea, 2007, pp. 2270 - 2273 [68] J. Yoon and J. Ryu, "Design, Fabrication, and Evaluation of a New Haptic Device Using a Parallel Mechanism," IEEE/ASME Transactions on Mechatronics, vol. 6, pp. 221-233 2001. [69] K. Suleman, et al., "A Design Approach for a New 6-DoF Haptic Device Based on Parallel Kinematics," in IEEE International Conference on Mechatronics, Malaga, Spain, 2009, pp. 1 - 6 [70] L. J. Stocco, et al., "Optimal Kinematic Design of A Haptic Pen," IEEE/ASME Transactions on Mechatronics, vol. 6, pp. 210 - 220, 2001. [71] R. Unal, et al., "A Multi-criteria Design Optimization Framework for Haptic Interfaces," in Haptic Interfaces for Virtual Environment and Teleoperator Systems, Istanbul 2008, pp. 231 - 238 [72] O. Baser, et al., "7 DOF Haptic Device Design," in EuroHaptics, 2006, pp. 507512. [73] G. Tholey and J. P. Desai, "Design and Development of a General Purpose 7 DOF Haptic Device," in Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems, Alexandria, Virginia, USA, 2006, pp. 95-101. [74] J. Arata, et al., "Development of A Haptic Device “DELTA-4” Using Parallel Link Mechanism," in ICRA, Kobe, Japan, 2009, pp. 294 - 300 [75] Y. Zhang, et al., "Design and Analysis of a Novel Haptic Device," in International Conference on Mechatronics and Automation, Luoyang, China, 2006, pp. 1175 - 1180. [76] Y. Cao, et al., "Design and Analysis of a New Six-DOF Haptic Device for Dental Training," in IEEE International Symposium on Robot and Human interactive Communication, 2007, pp. 263 - 267 [77] M. Guiatni, et al., "Design and Evaluation of a Haptic Interface for Interactive Simulation of Minimally-Invasive Surgeries," in International Conference on Advanced Intelligent Mechatronics, Singapore, 2009, pp. 1336 - 1341 [78] K. S. Hale and K. M. Stanney, "Deriving Haptic Design Guidelines from Human Physiological, Psychophysical, and Neurological Foundations," IEEE Computer Graphics and Applications, vol. 24, pp. 33 - 39, 2004. [79] V. Hayward and O. R. Astley, "Performance Measures for Haptic Interfaces," in 7th International Symposium Robotics Research, 1996, pp. 195-207. 166 [80] A. E. Kirkpatrick and S. A. Douglas, "Application-based Evaluation of Haptic Interfaces," in 10th Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems, Orlando, Florida 2002, pp. 32 - 39. [81] M. Khan, et al., "Exploring The Quantitative and Qualitative Measures for Haptic Systems," in International Symposium in Information Technology (ITSim), Kuala Lumpur 2010, pp. 31 - 36 [82] R. Finotello, et al., "Computation of Kinetostatic Performances of Robot Manipulators with Polytopes," in ICRA, Leuven, Belgium, 1998, pp. 3241-3246. [83] J. Lee, "A Study on the Manipulability Measures for Robot Manipulators," in IEEE/RSJ International Conference on Intelligent Robots and Systems, Grenoble, France, 1997, pp. 1458 - 1465. [84] P. Chiacchio, et al., "Evaluation of Force Capabilities For Redundant Manipulators," in ICRA, Minneapolis, MN 1996, pp. 3520 - 3525. [85] H. Shao, et al., "Dynamic Manipulability and Optimization of a Redundant Three DOF Planar Parallel Manipulator," in International Conference on Reconfigurable Mechanisms and Robots, London, UK 2009, pp. 302 - 308. [86] W.-T. Chang, et al., "Force Transmissibility Performance of Parallel Manipulators," Journal of Robotic Systems, vol. 20, pp. 659-670, 2003. [87] A. Pashkevich, et al., "Performance Evaluation of Parallel Manipulators for Milling Application," in 20th CIRP Design Conference, Nantes, France, 2010. [88] F. Pernkopf and M. L. Husty, "Workspace Analysis of Stewart-Gough-Type Parallel Manipulators " Journal of Mechanical Engineering Science, vol. 220, pp. 1019-1032, 2006. [89] J.-P. Merlet, "Determination of the Orientation Workspace of Parallel Manipulators," Journal of Intelligent and Robotic Systems, vol. 13, pp. 143-160, 1995. [90] I. A. Bonev and J. Ryu, "A Geometrical Method for Computing the ConstantOrientation workspace of 6-PRRS Parallel Manipulators," Mechanism and Machine Theory, vol. 36, pp. 1-13, 2001. [91] S. K. Agrawal, "Workspace Boundaries of In-parallel Manipulator Systems," International Journal of Robotics and Automation, vol. 7, pp. 94-99, 1991. [92] J.-P. Merlet, et al., "Workspaces of Planar Parallel Manipulators," Mechanism and Machine Theory, vol. 33, pp. 7-20, 1998. [93] Z.-C. Lai and C.-H. Menq, "The Dexterous Workspace of Simple Manipulators," IEEE Journal of Robotics and Automation, vol. 4, pp. 99-103, 1988. 167 [94] E. F. Fichter, "A Stewart-Platform Based Manipulator: General Theory and Practical Construction," International Journal of Robotics Research, vol. 5, pp. 157-181, 1986. [95] W. Tanaka, et al., "Workspace Analysis of Parallel Mechanism with Adjustable Link Parameters," in International Conference on Advanced Robotics, Seattle, WA, 2005, pp. 202 - 207. [96] K.-M. Lee and D. K. Shah, "Kinematic Analysis of A Three-Degrees-of-Freedom In-Parallel Actuated Manipulator," IEEE Journal of Robotics and Automation, vol. 4, pp. 354-360, 1988. [97] D. Y. Jo and E. J. Haug, "Workspace Analysis of Closed Loop Mechanisms with Unilateral Constraints," in ASME Design Automation Conference, Montreal, Canada, 1989, pp. 53-60. [98] E. E. Landsberger and A. P. Shanmugasundram, "Workspace of Parallel Link Crane," in IMACS/SICE International Symposium on Robotics, Mechatronics, and Manufacturing Systems, Kobe, Japan, 1992, pp. 479-486. [99] J. A. Snyman and L. J. d. Plessis, "An Optimization Approach to the Determination of the Boundaries of Manipulator Workspaces," Journal of Mechanical Design vol. 122, pp. 447-455, 2000. [100] C. Gosselin and M. Jean, "Determination of the Workspace of Planar Parallel Manipulators with Joint Limits " Robotics and Autonomous Systems, vol. 17, pp. 129-138 1996. [101] C. Gosselin, "Determination of the Workspace of 6-DOF Parallel Manipulators," Journal of Mechanical Design vol. 112, pp. 331-336, 1990. [102] M. T. Masouleh, et al., "Forward Kinematic Problem and Constant Orientation Workspace of 5-RPRRR (3T2R) Parallel Mechanisms," in ICEE, Isfahan, Iran, 2010. [103] J.-P. Merlet, "Determination of The Orientation Workspace of Parallel Manipulators," Journal of Intelligent & Robotic Systems, vol. 13, pp. 143-160, 1995. [104] H. Shah, et al., "CAD-Enhanced Workspace Optimization for Parallel Manipulators: A Case Study," in IEEE 2010 Conference on Automation Science and Engineering, Toronto, Canada, 2010, pp. 816-821. [105] K. A. Arrouk, et al., "CAD Based Design Optimization of Planar Parallel Manipulators," Solid State Phenomena, vol. 166-167, pp. 33-38, 2010. 168 [106] Z. Wang, et al., "A Study on Workspace, Boundary Workspace Analysis and Workpiece Positioning for Parallel Machine Tools " Mechanism and Machine Theory, vol. 36, pp. 605-622, 2001. [107] Y. J. Lou, et al., "A General Approach for Optimal Kinematic Design of Parallel Manipulators," in International Conference on Robotics and Automation, New Orlean, LA, 2004, pp. 3659 - 3664. [108] J. Rastegar, "Workspace Analysis of 4R Manipulators with Various Degree of Dexterity," Transactions of the ASME, vol. 110, pp. 42-47, 1988. [109] R. E. Stamper, et al., "Optimization of a Three DOF Translational Platform for Well-Conditioned Workspace," in International Conference on Robotics and Automation, Albuquerque, NM, 1997, pp. 3250 - 3255. [110] Z. Gao and D. Zhang, "Performance Mapping and Motion Simulation of A 4UPS+PU Redundantly Actuated Parallel Manipulator," in International Design Engineering Technical Conferences (IDETC), Montreal, Canada, 2010. [111] Y. Cao, et al., "An Integrated Method for Workspace Computation of Robot Manipulator," in International Joint Conference on Computational Sciences and Optimization, Sanya, Hainan 2009, pp. 309 - 312 [112] S. Lee, "Dual Redundant Arm Configuration Optimization with Task-Oriented Dual Arm Manipulability," IEEE Transactions on Robotics and Automation, vol. 5, pp. 78-97, 1989. [113] S. Lee and J. M. Lee, "Task-Oriented Dual- Arm Manipulability and Its Application to Configuration Optimization," in Conference on Decision and Control, Austin, Texas, 1988, pp. 2253-2260. [114] P. Chiacchio, et al., "Reply to "Comments on 'Global task space manipulability ellipsoids for multiple-arm systems' and further considerations"," IEEE Transactions on Robotics and Automation, vol. 9, pp. 232-236, 1993. [115] A. Bicchi, et al., "On the Mobility and Manipulability of General Multiple Limb Robots," IEEE Transactions on Robotics and Automation, vol. 11, pp. 215-228, 1995. [116] A. Bicchi, et al., "Force and Dynamic Manipulability for Cooperating Robot Systems," in IEEE International Conference on Intelligent Robots and Systems, Gremoble, France, 1997. [117] J. T.-Y. Wen and L. S. Wilfinger, "Kinematic Manipulability of General Constrained Rigid Multibody Systems," in International Conference on Robotics and Automation, Leuven, Belgium, 1998, pp. 1020-1025. 169 [118] J. T.-Y. Wen and L. S. Wilfinger, "Kinematic Manipulability of General Constrained Rigid Multibody Systems," IEEE Transactions on Robotics and Automation, vol. 15, pp. 558-567, 1999. [119] F. C. Park and J. W. Kim, "Manipulability of Closed Kinematic Chains," Journal of Mechanical Design vol. 120, pp. 542-548, 1998. [120] C. Melchiorri, "Multiple Whole-Limb Manipulation: An Analysis in the Force Domain," Robotics and Autonomous Systems, vol. 20, pp. 15-38 1997. [121] A. Bicchi and D. Prattichizzo, "Manipulability of Cooperating Robots with Passive Joints," in International Conference on Robotics & Automation, Leuven, Belgium, 1998, pp. 1038-1044. [122] T. Huang, et al., "Optimal Kinematic Design of 2-DOF Parallel Manipulators with Well-Shaped Workspace Bounded by a Specified Conditioning Index," IEEE Transactions on Robotics and Automation, vol. 20, pp. 538 - 543 2004. [123] J. Angeles, "The Design of Isotropic Manipulator Architectures in the Presence of Redundancies," The International Journal of Robotics Research, vol. 11, pp. 196201, 1992. [124] M. Kirćanski, "Kinematic Isotropy and Optimal Kinematic Design of Planar Manipulators and a 3-DOF Spatial Manipulator," The International Journal of Robotics Research, vol. 15, pp. 61-77 1996. [125] W. A. Khan and J. Angeles, "The Kinetostatic Optimization of Robotic Manipulators: The Inverse and the Direct Problems," Journal of Mechanical Design, vol. 128, pp. 168-178, 2006. [126] L. J. Stocco, et al., "On the use of scaling matrices for task-specific robot design," IEEE Transactions on Robotics and Automation, vol. 15, pp. 958 - 965 1999. [127] I. Mansouri and M. Ouali, "A New Homogeneous Manipulability Measure of Robot Manipulators, Based on Power Concept," Mechatronics, vol. 19, pp. 927944 2009. [128] S.-G. Kim and J. Ryu, "New Dimensionally Homogeneous Jacobian Matrix Formulation by Three End-Effector Points for Optimal Design of Parallel Manipulators," IEEE Transactions on Robotics and Automation, vol. 19, pp. 731737, 2003. [129] J. P. Merlet, "Jacobian, Manipulability, Condition Number, and Accuracy of Parallel Robots," Journal of Mechanical Design vol. 128, pp. 199-206, 2006. [130] P. Cardou, et al., "Kinematic-Sensitivity Indices for Dimensionally Nonhomogeneous Jacobian Matrices," IEEE Transactions on Robotics, vol. 26, pp. 166-173, 2010. 170 [131] T. Yoshikawa, "Manipulability of Robotic Mechanisms," The International Journal of Robotics Research, vol. 4, pp. 3-9, 1985. [132] J. K. Salisbury and J. J. Craig, "Articulated Hands: Force control and Kinematic Issues," The International Journal of Robotics Research, vol. 1, pp. 4-17, 1982. [133] K. E. Zanganeh and J. Angeles, "Kinematic Isotropy and The Optimum Design of Parallel Manipulators," International Journal of Robotic Research, vol. 16, pp. 185-197, 1997. [134] J. Kim, et al., "Performance Analysis of Parallel Mechanism Architectures for CNC Machining Applications," Journal of Manufacturing Science and Engineering vol. 122, pp. 753-759, 2000. [135] H. Asada and K. Youcef-Toumi, "Analysis and Design of a Direct-Drive Arm With a Five-Bar-Link Parallel Drive Mechanism," Journal of Dynamic Systems, Measurement, and Control vol. 106, pp. 225-230, 1984. [136] G. Campion, et al., "The Pantograph Mk-II: A Haptic Instrument," in IEEE/RSJ Int. Conf. Intelligent Robots and Systems, 2005, pp. 723-728. [137] J. An and D.-S. Kwon, "Five-bar Linkage Haptic Device with DC Motors and MR Brakes," Journal of Intelligent Material Systems and Structures, vol. 20, pp. 97107, 2009. [138] R. Leuschke, et al., "High Fidelity Multi Finger Haptic Display," in First Joint Eurohaptics Conference and Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems Pisa, Italy, 2005, pp. 606 - 608. [139] P. A. Voglewede and I. Ebert-Uphoff, "Two Viewpoints on the Unconstrained Motion of Parallel Manipulators at or near Singular Configurations," in ICRA, Washington, DC, 2002, pp. 503-510. [140] J. Wu, et al., "Performance comparison of three planar 3-DOF parallel manipulators with 4-RRR, 3-RRR and 2-RRR structures," Mechatronics, vol. 20, pp. 510-517, 2010. [141] A. Pashkevich, et al., "Stiffness Analysis of Overconstrained Parallel Manipulators," Mechanism and Machine Theory, vol. 44, pp. 966-982, 2009. [142] A. Pashkevich, et al., "Stiffness Analysis Of Multi-Chain Parallel Robotic Systems," Journal of Automation, Mobile Robotics & Intelligent Systems, vol. 3, pp. 75-82, 2009. [143] C. Gosselin, "Stiffness Mapping for Parallel Manipulators," IEEE Transactions on Robotics and Automation, vol. 6, pp. 377-382, 1990. 171 [144] S.-F. Chen and I. Kao, "Conservative Congruence Transformation for Joint and Cartesian Stiffness Matrices of Robotic Hands and Fingers," The International Journal of Robotics Research, vol. 19, pp. 835-847, 2000. [145] S.-F. Chen, et al., "A New Theory in Stiffness Control for Dextrous Manipulation," in ICRA, Seoul, Korea, 2001, pp. 3047 - 3054. [146] S.-F. Chen and I. Kao, "Simulation of Conservative Congruence Transformation: Conservative Properties in the Joint and Cartesian Spaces," in ICRA 2000, San Francisco, CA 2000, pp. 1283 - 1288. [147] S. D. Laycock and A. M. Day, "Recent Developments and Applications of Haptic Devices," Computer Graphics Forum, vol. 22, pp. 117-132, 2003. [148] H. Shin, et al., "Kinematic Optimization of a Redundantly Actuated Parallel Mechanism for Maximizing Stiffness and Workspace Using Taguchi Method," Journal of Computational and Nonlinear Dynamics, vol. 6, pp. 0110171-0110179, 2011. [149] Q. Xu and Y. Li, "Stiffness Optimization of a 3-DOF Parallel Kinematic Machine Using Particle Swarm Optimization," in IEEE International Conference on Robotics and Biomimetics, Kunming, China, 2006, pp. 1169–1174. [150] X. Liu, et al., "Performance Atlases and Optimum Design of Planar 5R Symmetrical Parallel Mechanisms " Mechanism and Machine Theory, vol. 41, pp. 119-144, 2006. [151] S. Li and C. Gosselin, "Stiffness Analysis of 3-RPR Planar Parallel Mechanism to the Stiffness Control," Applied Mechanics and Materials, vol. 16-19, pp. 786-790, 2009. [152] S. Kim, et al., "Stiffness Enhancement of a Redundantly Actuated Parallel Manipulator using Internal Preload: Application to a 2 DOF Parallel Mechanism," in Asian Symposium for Percision Engineering and Nanotechnology, Gwangju, Korea, 2007. [153] S. Li and C. Gosselin, "Stiffness Analysis of 3-RRR Planar Parallel Mechanisms Based on CCT," in 12th IFToMM World Congress, Besançon, France, 2007. [154] M. C. Cavusoglu, et al., "A Critical Study of the Mechanical and Electrical Properties of the PHANToM(TM) Haptic Interface and Improvements for High Performance Control," Presence, vol. 11, pp. 555-568, 2002. [155] A. Jarillo-Silva, et al., "PHANToM OMNI Haptic Device: Kinematic and Manipulability," in Electronics, Robotics and Automotive Mechanics Conference, Cuernavaca, Morelos 2009, pp. 193-198. 172 [156] S. Martin and N. Hillier, "Characterisation of the Novint Falcon Haptic Device for Application as a Robot Manipulator," in Australasian Conference on Robotics and Automation (ACRA), Sydney, Australia, 2009. [157] X.-J. Liu and J. Wang, "Some New Parallel Mechanisms Containing the Planar Four-bar Parallelogram," International Journal of Robotics Research, vol. 22, pp. 717-732, 2003. [158] O. Salgado, et al., "A Parallelogram-Based Parallel Manipulator for Schönflies Motion," Journal of Mechanical Design, vol. 129, pp. 1243-1250, 2007. [159] N. Rakotomanga, et al., "Kinetostatic Performance of a Planar Parallel Mechanism with Variable Actuation," in Advances in Robot Kinematics: Analysis and Design, ed: Springer, 2008, pp. 311-320. [160] X.-J. Liu and J. Wang, "Some New Spatial 3DOF Fully Parallel Robotic Mechanism with High or Improved Rotational Capability," in Robotic Manipulators: New Research, ed: Nova Science Pub Inc, 2005, pp. 33-64. [161] T. Koyama, et al., "Multi-Fingered Exoskeleton Haptic Device using Passive Force Feedback for Dexterous Teleoperation," in IEEE/RSJ International Conference on Intelligent Robots and Systems, Lausanne, Switzerland, 2002, pp. 2905 - 2910. [162] K. Vlachos, et al., "Design and Implementation of a Haptic Device for Training in Urological Operations," IEEE Transactions on Robotics and Automation, vol. 19, pp. 801-809, 2003. [163] A. Janot, et al., "Modeling and Identification of a Haptic Device having a Double Parallelogram Loop," in 12th IFToMM World Congress, Besançon, France, 2007. [164] J.-W. Kim, et al., "Design and Control of Two Types of Planar Translational Parallel Manipulators with Parallelogram Mechanisms," in International Conference on Control, Automation and Systems, Seoul, Korea, 2007, pp. 22742277. [165] D. Chablat and P. Wenger, "A New Six Degree-of-Freedom Haptic Device based on the Orthoglide and a Hybrid Agile Eye," in IDETC, Philadelphia, PA, 2006. [166] B. D. Adelstein, et al., "Kinematic Design of A Three Degree of Freedom Parallel Hand Controller Mechanism," in ASME Dynamic Systems and Control 1996, pp. 539-546. [167] J. Arata, et al., "A Haptic Device DELTA-4: Kinematics and its Analysis," in Third Joint Eurohaptics Conference and Symposium on Haptic Interfaces, Salt Lake City, UT, 2009, pp. 452-457. 173 [168] S. Grange, et al., "Overview of the Delta Haptic Device," in Eurohaptics, Birmingham, England, 2001. [169] K. Yoshida, et al., "Base Parameters for Manipulators with a Planar Parallelogram Link Mechanism " Advanced Robotics, vol. 10, pp. 105-137, 1995. [170] C. Cho, et al., "Design and Control of Planar Haptic with Pssive Actuators based on Passive Force manipulability Ellipsoid (FME) Analysis," Journal of Robotic Systems, vol. 22, pp. 475 - 486, 2005. [171] M. C. Cavusoglu and D. Feygin, "Kinematics and Dynamics of Phantom(TM) model 1.5 Haptic Interface," UC Berkeley, March 20, 2001. [172] R. L. Williams, "Inverse Kinematics and Singularities of Manipulators with Offset Wrist," International Journal of Robotics and Automation, vol. 14, pp. 1-8, 1999. [173] Y. Komoguchi, et al., "Redundancy Resolution of a 7 DOF Haptic Interface Considering Collision and Singularity Avoidance," in IEEE/RSJ International Conference on Intelligent Robots and Systems, Nice, France, 2008, pp. 3513-3518. [174] A. Peer, et al., "A Mobile Haptic Interface For Bimanual Manipulations in Extended Remote/Virtual Environments," in Robotic Research Trends, X. P. Guo, Ed., ed: Nova Science Publisher, 2007, pp. 267-286. [175] U. Unterhinninghofen, et al., "Control of a Mobile Haptic Interface," in International Conference on Robotics and Automation (ICRA), Pasadena, CA, USA, 2008, pp. 2085-2090. [176] L.-F. Lee, et al., "Kinematics Analysis of In-Parallel 5 DOF Haptic Device," in IEEE/ASME International Conference on Advanced Intelligent Mechatronics, Montreal, Canada, 2010. [177] H. Shah, et al., "Role of Automated Symbolic Generation of Equations of Motion to Enhance Engineering Education," ASEE Computers in Education Journal Special Issue: Novel Approaches in Robotics Education, vol. 1, pp. 2-20, 2010. [178] Y. Takahashi, et al., "Upper-Limb Rehabilitation System Using Haptic Device with Basic Motion Training Program," in International Conference of the IEEE Engineering in Medicine and Biology Society, Cancun, Mexico, 2003, pp. 1621 1624. [179] I. Shakra, et al., "VR-Based Hand Rehabilitation using a Haptic-Based Framework," in IEEE Instrumentation and Measurement Technology Conference, Sorrento, Italy, 2006, pp. 1178-1181. 174 [180] A. Alamri, et al., "Haptic Exercises for Measuring Improvement of Post-Stroke Rehabilitation Patients," in IEEE International Workshop on Medical Measurement and Applications, Warsaw, Poland, 2007, pp. 1 - 6. [181] A. Barghout, et al., "Haptic Rehabilitation Exercises Performance Evaluation Using Fuzzy Inference Systems," in IEEE International Workshop on Medical Measurements and Applications, Ottawa, Ontario, Canada, 2008, pp. 13-18. [182] J.-H. Ryu, et al., "Sampled- and Continuous-Time Passivity and Stability of Virtual Environments," IEEE Transactions on Robotics, vol. 20, pp. 772 - 776, 2004. [183] J.-H. Ryu, et al., "Stability Guaranteed Control: Time Domain Passivity Approach," IEEE Transactions on Control Systems Technology, vol. 12, pp. 860 868, 2003. [184] T. Hulin, et al., "Stability Boundary for Haptic Rendering: Influence of Human Operator," in IROS, Nice, France, 2008, pp. 3483 - 3488. [185] W. K. S. Low, et al., "Analytical Modeling of a Haptic-Robot System Used for Rehabilitation," in 6th World Congress of Biomechanics, Singapore, 2010, pp. 675-678. [186] T. Flash and F. Mussa-Ivaldi, "Human Arm Stiffness Characteristics During the Maintenance of Posture " Experimental Brain Research, vol. 82, pp. 315-326, 1990. [187] R. Shadmehr and S. P. Wise, Computational Neurobiology of Reaching and Pointing: A Foundation for Motor Learning. Cambridge, MA: MIT Press, 2005. [188] P. K. Artemiadis, et al., "Human Arm Impedance: Characterization and Modeling in 3D Space," in IEEE/RSJ International Conference on Intelligent Robots and Systems Taipei, Taiwan, 2010. [189] M. Aisen, et al., "The effect of robot-assisted therapy and rehabilitative training on motor recovery following stroke," Archives of Neurology, vol. 54, pp. 443-446, 1997. [190] R. Boian, et al., "Virtual Reality-Based Post-Stroke Hand Rehabilitation," in Proceedings of Medicine Meets Virtual Reality 2002 Conference, Newport Beach CA, USA, 2002, pp. 64-70. [191] D. Jack, et al., "Virtual Reality-Enhanced Stroke Rehabilitation," IEEE transactions on Neural Systems and Rehabilitation Engineering, vol. 9, pp. 308318, 2001. 175 [192] V. Popescu, et al., "A Virtual-Reality-Based Telerehabilitation System with Force Feedback," IEEE Transactions on Information Technology in Biomedicine, vol. 4, pp. 45-51, 2000. [193] D. Reinkensmeyer, et al., "Rehabilitators, robots, and guides: New tools for neurological rehabilitation," in Biomechanics and neural control of posture and movement, J. M. Winters and P. E. Crago, Eds., ed New York: Springer, 2000, pp. 516-533. [194] B. Volpe, et al., "Robot training enhanced motor outcome in patients with stroke maintained over 3 years," Neurology, vol. 53, pp. 1874–1876, 1999. [195] C. Jadhav and V. Krovi, "In-Vivo Estimation of Unknown Upper-Limb Kinematic Parameters," in 1th National Conference on Machines and Mechanisms, (NaCoMM-2003), Delhi, India, December 18-19, 2003. [196] C. G. Jadhav and V. Krovi, "A Low-Cost Framework for Individualized Interactive Telerehabilitation," in 26th Annual International Conference in IEEE Engineering in Medicine and Biology Society (EMBS), San Francisco, California, September 1-5, 2004. [197] V. Krovi, et al., "Design and Virtual Prototyping of a Head Controlled Feeder," in Proceedings of the 5th National Applied Mechanisms & Robotics Conference, Cincinnati, Ohio, October 12-15, 1997. [198] P. Nair, et al., "Development and Testing of a Low-Cost Diagnostic Tool for Upper Limb Dysfunction," in IEEE/RSJ IROS 2003, Proceedings of 2003 IEEE/RSJ International Conference on Intelligent Robotics and Systems, Las Vegas, NV, USA, October 27-31, 2003. [199] C. Jadhav, et al., "Individualized Interactive Home-based Haptic Telerehabilitation," IEEE Multimedia Systems Magazine: Haptic User Interfaces in Multimedia Systems, vol. 13, , pp. 2-9, July 2006. [200] L.-F. Lee and V. Krovi, "Musculoskeletal Simulation of Optimal Gait Frequency in Biped and Human Locomotion," in IEEE BIOROB, Scottsdale, Arizona, 2008. [201] L.-F. Lee and V. Krovi, "Musculoskeletal Simulation Based Optimization of Rehabilitation Programs," in IEEE International Workshop on Virtual Rehabilitation, New York, NY, 2006, pp. 36-41. [202] L.-F. Lee, et al., "Case Studies of Musculoskeletal-Simulation-Based Rehabilitation Program Evaluation," IEEE Transactions on Robotics, vol. 25, pp. 634-638, June 2009. [203] P. Lam, et al., "A Haptic-Robotic Platform for Upper-Limb Reaching Stroke Therapy: Preliminary Design and Evaluation Results," Journal of NeuroEngineering and Rehabilitation, vol. 5, 2008. 176 [204] Y. K. Kim and X. Yang, "Hand-writing Rehabilitation in the Haptic Virtual Environment," in IEEE International Workshop on Haptic Audio Visual Environments and their Applications, Ottawa, Canada, 2006, pp. 161-164. [205] Y. Takahashi, et al., "Upper-Limb Rehabilitation System Using Haptic Device with Basic Motion Training Program," in 25th Annual International Conference of Engineering in Medicine and Biology Society, Japan, 2003, pp. 1621 - 1624. [206] G. Burdea, et al., "Virtual Reality-Based Orthopedic Telerehabilitation," IEEE Transactions on Rehabilitation Engineering, vol. 8, pp. 430-432, 2000. [207] N. Hogan, et al., "MIT-MANUS: A Workstation for Manual Therapy and Training," in International Workshop on Robot and Human Communication, Tokyo, Japan, 1992, pp. 161 - 165. [208] M. Girone, et al., "A Stewart Platform-Based System for Telerehabilitation," Autonomous Robots, vol. 10, pp. 203-212, 2001. Ankle [209] T. Miyoshi, et al., "Haptic Device System For Upper Limb Motor Impairment Patients: Developing And Handling In Healthy Subjects," in Rehabilitation Robotics S. S. Kommu, Ed., ed Austria: I-Tech Education and Publishing, 2007. [210] V. Krovi and V. Kumar, "Rapid Design and Prototyping of Customized Rehabilitation Aids," in Encyclopedia of Microcomputers, A. Kent, et al., Eds., ed New York, September 1999. [211] P. Nair, et al., "Developement and Testing of a Low-Cost Diagnostic Tool for Upper Limb Dysfunction," in 2003 IEEE/RSJ International Conference on Intelligent Robotics and Systems, Las Vegas, NV, USA, 2003. [212] C. G. Jadhav and V. Krovi, "A Low-Cost Framework for Individualized Interactive Telerehabilitation," in 26th Annual International Conference in IEEE Engineering in Medicine and Biology Society (EMBS), San Francisco, California, 2004. [213] N. P. Suh, The Principles of Design: Oxford University Press, USA, 1990. [214] AnyBodyTechnology. (2006). The AnyBody Modeling System. Available: http://www.anybodytech.com [215] S. L. Delp, et al., "OpenSim: Open-Source Software to Create and Analyze Dynamic Simulations of Movement," IEEE Transactions on Biomedical Engineering, vol. 54, pp. 1940 - 1950 2007. [216] MusculoGraphics. (1992). www.musculographics.com SIMM 177 Software Suite. Available: [217] J. Rasmussen, et al., "AnyBody - a software system for ergonomic optimization," presented at the Fifth World Congress on Structural and Multidisciplinary Optimization, Lido di Jesolo - Venice, Italy, 2003. [218] J. Rasmussen, et al., "Musculoskeletal modeling as an ergonomic design method," in International Ergonomics Association XVth Triennial Conference, Seoul, Korea, 2003. [219] J. Rasmussen, et al., "Designing a general software system for musculoskeletal analysis," in IX International Symposium on Computer Simulation in Biomechanics, Sydney, Australia, 2003. [220] J. Rasmussen, et al., "Muscle Recruitment by The Min/Max Criterion - A Comparative Numerical Study," Journal of Biomechanics, vol. 34, pp. 409-415, 2001. [221] M. d. Zee, et al., "Validation of a Musculo-Skeletal Model of The Mandible and its Application to Mandibular Distraction Osteogenesis," Journal of Biomechanics, vol. 40, pp. 1192-1201, 2007. [222] S. R. Dubowsky, et al., "Validation of a Musculoskeletal Model of Wheelchair Propulsion and Its Application To Minimizing Shoulder Joint Forces," Journal of Biomechanics, vol. 41, pp. 2981-2988, 2008. [223] M. Praagman, et al., "Muscle Oxygen Consumption, Determined by NIRS, in Relation to External Force and EMG," Journal of Biomechanics, vol. 36, pp. 905912, 2003. [224] B. K. Ahlborn and R. W. Blake, "Walking and Running at Resonance," Zoology, vol. 105, pp. 165-174, 2002. [225] B. K. Ahlborn, et al., "Frequency Tuning in Animal Locomotion," Zoology, vol. 109, pp. 43-53, 2006. [226] M. S. Narayanan, et al., "Virtual Musculoskeletal Scenario-Testing CaseStudies," in 2008 Virtual Rehabilitation, Vancouver, Canada, 2008. [227] V. Krovi, "Design and Virtual Prototyping of User User-Customized Assistive Devices," Ph.D. Ph.D. Dissertation, Department of Mechanical Engineering and Applied Mechanics, University of Pennsylvania, Philadelphia, PA., 1998. [228] N. I. Badler, et al., Simulating Humans : Computer Graphics Animation and Control USA: Oxford University Press, 1993. [229] C. L. Vaughan, et al., Dynamics of Human Gait, 2 ed. Cape Town, South Africa: Kiboho Publishers, 1992. 178 [230] D. A. Winter, Biomechanics and Motor Control of Human Movement, 3 ed. Hoboken, NJ: John Wiley & Sons, 2005. [231] M. Praagman, et al., "Muscle Oxygen Consumption, Determined by NIRS, in Relation to External Force and EMG," Journal of Biomechanics, vol. 36, pp. 905912, 2003. [232] M. d. Zee, et al., "Validation of a Musculo-Skeletal Model of The Mandible and its Application to Mandibular Distraction Osteogenesis," Journal of Biomechanics, vol. 40, pp. 1192-1201, 2007. [233] S. R. Sullivan, et al., "Multibody computational biomechanical model of the upper body," in ASME 2005 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference, Long Beach, California USA, 2005. Appendix A A.1 Jacobian Formulation Example: Stanford Manipulator A Stanford manipulator is shown in Figure 99. Figure 99: Stanford Manipulator, a R-R-P-R-R-R serial manipulator and its D-H frame assignment. 179 The DH frames and parameter assignment, according to the convention used in [Robotic Handbook] is shown in Table 8, where terms with an * denote joint variables. i i ai di 1 0 0 2 /2 3 4 i i ,initial 0 * 1 /2 0 d2 * 1 /2 /2 0 d 3* /2 0 0 * 1 0 0 0 * 1 0 0 0 * 1 0 /2 5 6 0 /2 - Table 8: DH Frame assignment for Stanford manipulator. A.1.1 Spatial Vector Formulation Using the frame assignment given in Table 8, the Homogenous Transformation matrices from frame {0} to frame {6} (note that in this case frame {6} is also the endeffector frame) are given as follow: 0 A1 3 A4 cos sin 0 0 cos 0 sin 0 1 1 4 4 sin 1 cos 1 0 0 sin 4 0 cos 4 0 0 0 1 0 0 0 0 1 0 1 0 0 1 A2 0 0 0 1 where the initial angle of 4 A5 1 and sin 2 0 cos 2 0 cos 0 sin 0 cos 5 0 sin 5 0 sin 0 cos 0 2 2 2 5 5 0 1 0 0 0 1 0 0 0 d2 0 1 0 0 0 1 2 0 0 1 0 5 cos sin 0 0 A3 A6 1 0 0 0 6 6 0 1 0 0 sin 6 cos 6 0 0 0 d3 0 0 1 0 0 1 0 0 0 0 1 are carried out in forming the above homogeneous transformation matrix. Now we compute the direction of each joint axis (as expressed in the base frame), which are given by: 180 0 z1 0 z4 0 z6 0 0 0 0 , z2 1 R1 0 1 0 sin R4 0 1 cos 0 R2 0 1 sin 1 0 cos 1 R6 0 sin sin 1 2 sin 1 sin 1 1 , z3 R3 0 1 cos 1 sin sin 1 4 sin 1 4 cos cos cos 1 sin cos 2 cos 4 cos 2 4 2 1 cos cos 1 sin sin 2 0 0 , z5 sin 0 R5 0 1 2 cos 1 sin cos 2 0 1 sin 4 sin 1 2 2 cos cos 1 cos 4 sin 2 cos 4 2 cos 4 2 cos 4 , (92) 4 The vector i pn* , which is the vector defined from the reference frame of i th link to the origin of the end-effector frame are given by (Note that frame {6} itself is also the end-effector frame): 6 p * 6 0 4 p*6 0 R4 4 r5 p*6 0 1 * 6 0 0 0, 0 0 R6 r6 2 p 0 R6 0 0 6 5 p*6 0 R5 0 0 0 0 0, 0 0 0 5 R5 r6 3 6 p*6 R2 R1 0 d2 0 d3 sin 1cos 2 d3 cos 1cos 2 d3 sin 2 p*6 0 1 2 * 6 0 0 R5 0 0 * 6 0 0 0 0 0 0 0 R3 0 0 0 0 0 0 0 0 0 p 0 R3 3 r4 0 d3 sin 1cos 2 d3 cos 1cos 2 d3 sin 2 0 0 0 3 p * 6 0 d3 0 R2 2 r3 R1 r2 p 0 0 5 d3 sin 1cos 2 d2 cos 1 d3 cos 1cos 2 d2 sin 1 d3 sin 2 Note that J 3 is a prismatic joint and the rest are revolute joints, from Eqn. (6): 181 (93) -d3 cos 1 cos 2 - d2 sin -d 3 sin 1 cos 2 d2 cos z × 1 p6* J1 = 1 = z1 d3 sin 1 sin -d3 cos 1 sin 1 1 z × 2 p6* , J2 = 2 = z2 0 0 0 1 - sin 1 cos cos 1 cos 3 * sin 2 z × p6 J3 = 3 = 0 z3 0 0 2 2 d3 cos 2 cos 1 sin 1 0 0 0 4 * 0 z × p6 J4 = 4 = sin 1 sin 2 z4 cos 1 sin 2 cos 2 2 2 , 0 0 z5 × 5 p6* = - cos 1 sin z5 - sin 1 sin J5 0 sin 1 cos 4 cos cos 4 1 sin 2 cos 4 0 0 6 * 0 z × p6 J6 = 6 = - cos 1 sin 4 sin 1 cos z6 - sin 1 sin 4 cos 1 cos sin 2 cos 4 cos cos 2 2 , 4 4 (94) cos cos 2 2 4 4 As such, we obtain the Jacobian of the Stanford manipulator as follow: J J 1, J 2 , -d3c 1c -d3s 1c 2 2 , Jn - d2s d2c 1 1 d3s 1s -d 3c 1s 2 2 -s 1c c 1c 0 0 0 2 0 0 0 0 0 0 0 d3c 0 c 1 0 0 s 1 0 c 1s 0 c 1 2 0 s 2 2 s 1s 2 2 (95) -c 1s 4 s 1c 2c 4 -c 1s 4 s 1c 2c 4 -s 1s 4 c 1c 2c 4 -s 1s 4 c 1c 2c 4 2 s 2c 4 s 2c 4 A.1.2 Twist-based Jacobian Formulation The twist contribution from each joints, expressed in frame {0} are given as 182 0 t1 0 0 1 0 0 0 0 t2 - cos 1 sin - sin 1 sin 0 t5 cos sin 0 0 0 0 sin sin 1 cos 2 0 t3 - sin 1 cos 2 cos cos 1 cos 2 cos 4 sin 2 cos 4 2 sin 1 cos 1 4 d2 cos d2 cos 2 d2 cos 4 d3 sin 4 d3 sin w sin 1 cos 2 cos 1 cos 2 sin 2 - cos 1 sin - sin 1 sin 4 4 0 t6 sin 4 d3 sin 4 0 0 0 1 1 cos 4 sin 4 2 t4 - sin 1 cos 2 cos cos 1 cos 2 cos 4 sin 2 cos 4 4 d2 cos 2 sin 1 cos sin 1 sin 2 cos 1 sin 2 cos 2 d2 sin 1 cos 2 d3 cos -d2 cos 1 cos 2 d3 sin -d2 sin 2 2 d2 cos d2 cos 4 d3 sin 4 4 1 4 4 4 d3 sin d3 sin 1 4 4 The Jacobian matrix, expressed in frame {0} is thus given as: J J1 J 2 0 c 0 s Jn s 1s 1 0 1 0 c 1s c 1 0 0 0 0 s 1c 0 0 0 0 c 1c 2 s 2 2 d2s 1c -c 1s 2 -s 1s 2 - s 1c 2c 4 c 1c 2c s 2c 2 d 3c 2 4 -d2c 1c 2 d 3s -d2s 2 s 1s 2 (d2c 1 c 1s 2 (d2c c 2 (d2c 4 1 -c 1s 4 -s 1s 4 - s 1c 2c 4 d 3s 4 ) 4 s 1s 2 (d2c d 3s 4 ) d3s 4 ) c 1s 2 (d2c c 2 (d2c 4 4 c 1c 2c s 2c 4 4 4 4 4 d3s 4 ) 4 4 d3s 4 ) d3s 4 ) The twist contribution from each joints, expressed in frame {W} where frame {W} have the same orientation as frame {0}, but locate at frame {6} are given as w t1 0 0 1 -d3 cos 1 cos 2 - d2 sin -d3 sin 1 cos 2 d2 cos 0 - cos 1 sin - sin 1 sin w t5 w t2 1 1 - sin 1 cos - cos 1 cos 4 sin 2 cos 4 0 0 0 4 cos 1 sin 1 0 d3 sin 1 sin -d 3 cos 1 sin d 3 cos 2 cos cos 2 2 w 0 0 0 t3 2 2 - cos 1 sin - sin 1 sin 4 4 w 183 w sin 1 cos 2 cos 1 cos 2 sin 2 t6 t4 sin 1 sin 2 sin 1 cos 2 cos 2 0 0 0 - sin 1 cos - cos 1 cos 4 sin 2 cos 4 0 0 0 4 cos cos 2 2 4 4 The Jacobian matrix, expressed in frame {W} is thus given as: J J1 J 2 Jn 0 c 0 s 1 -d3c 1c -d3s 1c 2 2 0 0 1 0 s 1c 0 c 0 - d2s d2c 1 1 s 1s 1 d3s 1s -d 3c 1s d3c 2 2 2 s 1c c 1c 2 s 2 2 -c 1s 2 2 -s 1s 2 4 - s 1c 2c 4 - c 1c 2c s 2c 4 4 -c 1s 4 -s 1s 4 - s 1c 2c 4 4 - c 1c 2c 4 s 2c 0 0 0 0 0 0 0 0 0 4 (96) Which is the same as the one formulated using the spatial vector formulation. A.2 Numerical Workspace Computation Workspace computation of parallel manipulators can be difficult due to the irregular shape of the workspace volume. Since workspace of a parallel manipulator is often used as a performance metric in designing parallel manipulators, it is important to develop a computational efficient way of computing the area enclosed by the workspace. Feasible workspace of parallel manipulators is usually computed numerically, leaving the user with large data clouds that represent the feasible points. These data points are often scattered. For planar mechanism, these data clouds are x and y points. Traditionally, one would evaluate if these data points lies within a 2D „box‟ define by x-y grid size: if it lie inside this box, the area of the box will be counted. Adding up these „boxes‟ will give an 184 estimate of the total area. For spatial volume estimation, a 3D cube will be used instead of a box. Here two ways of numerically compute an area enclosed by the workspace are presented. The polyarea algorithm can be used to computes the area enclosed by a set of points efficiently, as long as the point do not intersect each other and the area that it enclosed is closed. Hence to use this algorithm, we basically need to find the points that define the boundary of the workspace. There are two ways to get these boundary points. Using an example, where the feasible workspace of a parallel manipulator is a square, we show how these two algorithms can be used to obtain the boundary points. Subsequently, a case study with a circular workspace is studied, as well as its application in computation of the constant orientation workspace area for the HD2 haptic device at a specific plane. Algorithm 1: Set up x-, y-grid. For each x and y point, check if the point is reachable. If it is reachable, store the point. You end up getting points shown in Figure 100(a). To get the boundary points, one needs an algorithm to filter out the interior points, leaving only the points on the boundary (Figure 100(b)). However, these boundary points are usually not organized, if one plotted them sequentially (Figure 100(c)). Hence, the second algorithm needs to order these points sequentially around the boundary, the endresult is shown in Figure 100(d). With these points, the area can be computed using polyarea algorithm. Algorithm 1 (a) (b) (c) 185 (d) Figure 100: (a) raw data points; (b) interior points are filtered; (c) the boundary points are not arranged sequentially around the boundary; (d) re-ordered points sequentially envelop the boundary. The accuracy of this method depends on the grid size, and the specified grid spacing. In general, the smaller the grid size, more accurate representation of the boundary can be generated. The disadvantage of this algorithm is that the algorithm that removes the interior points and subsequently re-organizing the point sequentially around the workspace boundary can be time consuming. Algorithm 2: Instead of recording all the points on the grid that in the feasible workspace, this algorithm create a grid z(x,y), where interior points are mark as 1 and exterior points are mark as 0. Through this grid, one can generate a surface plot (Figure 101(a)), and subsequently a contour plot of this surface (Figure 101(b)). The points that specify these contour plot can then be extracted, and use as boundary points, for workspace area computation, as shown in Figure 101(c). Algorithm 2 Figure 101: (a) Surface plot that represent the workspace; (b) Contour at specific level can be generated; (c) the workspace boundary point extracted from the contour plot. The accuracy of this method depends, in addition to grid size and grid spacing, is the selection of the level at which the contour is specified. Using the square workspace as 186 an example, select the contour at level 1.0 give us the exact value of the workspace area, which is 16 unit^2. Choosing other contour levels result in a workspace area larger than 16. However, for workspace that is more irregular shaped, choosing contour at level 0.5 will give us a more accurate result. Nonetheless, choosing contour at level 1.0 will always give us a more conservative estimation of the workspace. The advantage of this algorithm is that the computation is much faster than the previous algorithm as there is no need for remove interior points as well as re-organizing of points. A.2.1 Case Study: Circular Workspace Workspaces of planar parallel manipulators are usually irregularly shaped. Hence a circular workspace study will show us the accuracy of the above two algorithms under curved boundary. Using a series of grid size of 0.01, 0.02, 0.05, 0.1, we mapped the workspace of a manipulator that where its reachable workspace is a circle with radius 2, centered at (0,0). The processes of both algorithms are shown graphically in Figure 102 and Figure 103, for grid size of 0.1 and 0.01; and the results for all cases are tabulated in Table 9 and Table 10. Grid Size = Computation Time 0.01 Boundary Points Grid Size = Computation Time 0.02 Boundary Points Grid Size = Computation Time 0.05 Boundary Points Grid Size = Computation Time 0.1 Boundary Points Algorithm 1 452.55 sec (442.62 sec filter, 9.93 sec sorting) 1128 28.69 sec (27.39 sec filter, 1.29 sec sorting) 564 5.95 sec (4.40 sec filter, 0.55 sec sorting) 224 0.071 sec (0.045 sec filter, 0.026 sec sorting) 112 Algorithm 2 0.036 sec 1605 0.0155 sec 805 0.0021 sec 325 9.5x10-4 sec 165 Table 9: Comparison of computation time and number of boundary points generated in each of the two algorithms, for various grid size. 187 Grid Size = 0.01 Grid Size = 0.02 Grid Size = 0.05 Grid Size = 0.1 Computed Area % Difference Computed Area % Difference Computed Area % Difference Computed Area % Difference Algorithm 1 12.5062 (12.5664) -4.8x10-1% 12.4528 (12.5664) -0.9% 12.2750 (12.5664) -2.32% 11.98 (12.5664) -4.67% Algorithm 2 12.5627 (12.5664) -2.96x10-2% 12.5658 (12.5664) -4.54x10-3% 12.5562 (12.5664) -8.05x10-2% 12.5450 (12.5664) -0.17% Table 10: Comparison of computed are and % difference with actual area at various grid size, in each of the two algorithms. For Algorithm 2, it is obvious that in addition to grid size, the level at which the contour is evaluated affect the result. For extreme cases, like the square workspace shown previously, where the square workspace form by four straight lines is also aligned with the grid, it is necessary to evaluate the contour at level 1.0 to get an accurate estimation of the actual workspace. Nonetheless, the level at which the contour is evaluated affect the accuracy of the estimation. Grid size = 0.1 Algorithm 1 (a) (b) 188 (c) Grid size = 0.01 (d) (e) (f) Figure 102: Process of computing area using Algorithm 1. (a) shows the original data points that are inside the workspace; (b) the filtered and re-organized boundary data points; and (c) the area computed using these data point using polyarea algorithm, for grid size 0.1. (d)-(f) shows the same process for data points generated with grid size 0.01. To study this effect, Figure 104 shows the % differences of the estimated workspace with actual workspace, at various contour levels, for three different grid sizes at 0.1, 0.05, and 0.01. From this figure, one can see that for grid size of 0.1, the % difference could varied from 4.40% (over estimate) to -4.66% (underestimate). At finer grid size of 0.01, the % difference varies much lesser, from 0.42% to -0.47%. On the other hand, for both grid sizes, evaluate the workspace at contour level 0.5, give us %difference of -0.17% (for grid size 0.1) and -0.029% (for grid size 0.01). This is expected result as the contours are interpolated linearly. Hence, it is advice that one should evaluate the contour at level 0.5 for workspace area estimation with this algorithm. However, as grid size becomes finer, the effect of the selection of which level the contour is evaluated diminished. Still, for more conservative estimation of a given workspace, one should evaluated the contour at 1.0. Otherwise, evaluate the contour at 0.5 should be used. Algorithm 2 189 Grid size = 0.01 (b) (c) Grid size = 0.01 (a) (e) (f) (g) Figure 103: Process of computing area using Algorithm 2. (a) shows the surface plot of points that are inside the workspace; (b) the level at which each contour can be generated, and subsequently points can be extracted; and (c) the area computed using these data point using polyarea algorithm, for grid size 0.1. (d)-(f) shows the same process for data points generated with grid size 0.01. 190 Figure 104: Percent difference of estimating workspace area from actual workspace at different contour levels (from 0 to 1.0, with increment of 0.1), for grid size of 0.1, 0.05, and 0.01. The horizontal line represents perfect estimation. In previous sections, we verified that both algorithms provide reasonably good boundary points for subsequent workspace area computation. Algorithm 1 always gave conservative area estimation, and when the grid size is relatively fine, the error is small. However, it is not very computational efficiency. Algorithm 2 on the other hand, provides an adjustable parameter (the level where the contour is to be evaluated), and compute much faster. In this section, both algorithms will be used to compute the 2D workspace area of the HD2 Haptic device, basically looking at a slice of the 3D volume workspace at a particular level. We will look at constant orientation workspace of the HD2 device, at a horizontal plane where both \theta_1 and \theta_1‟ is zero. Note that this is also the 191 largest attainable horizontal workspace area for the device. Due to the construction of the HD2 device, there are physical constraints imposed on several joints. Through measurements, these joint limits are listed in Table 7. By taking these physical limits into account, using grid size of 0.2, 0.1, 0.05 and 0.02, we compute the workspace area of HD2 with the two algorithms shown previously. The results are shown graphically in Figure 105 (for Algorithm 1) and Figure 106 (for Algorithm 2, evaluated at contour level 0.5). With the finest grid size 0.02, the workspace area estimated using Algorithm 1 is 28.4462 unit^2, and is 28.697 unit^2 using Algorithm 2 evaluated at contour level 0.5. To see how these two algorithms perform, the estimated areas using both algorithms are plotted in Figure 107. Again, one can see that Algorithm 1 estimation is very close to Algorithm 2 estimation evaluated at contour level 1.0 (28.4462 unit^2 compare to 28.4458 unit^2) – which is a more conservative estimation of the workspace area. Hence, similar to the argument that we used in previous case study, a conservative estimation (underestimate) of the constant orientation workspace of HD2 haptic device is 28.4458 unit^2, where the actual constant orientation workspace of the HD2 haptic device could be closer to 28.697 unit^2. Physical (Measured) Joint Limits on (HD)2 Maximum Angle Minimum Angle 1 2 2 3 4 4 Range 30 deg -30 deg 60 deg 105 deg -60 deg 165 deg 55 deg Max is -50 deg, Depends on \theta2 Max is 105 deg No limit No limit NA 0 deg -180 deg 180 deg No limit No limit NA Table 11: Measured joint limits for the HD2 haptic device. 192 In this section, we compare two algorithms that numerically compute / estimate planar workspace of a parallel manipulator. Since Algorithm 2 computes the workspace much faster than Algorithm 1, in our subsequent work, we will use this algorithm to estimate the planar workspace of a given parallel manipulator. Original Data Points Workspace Computation with Algorithm 1 (b) (c) (d) (e) (f) (g) (h) Filtered and Re-organized Data (a) Figure 105: (a)-(e) Raw data points representing the constant orientation workspace of HD2 haptic device computed using Algorithm 1 at grid size 0.2, 0.1, 0.05 and 0.02; and (f)-(i)their corresponding workspace evaluated using the filtered and re-organized boundary points. 193 Generated Workspace Algorithm 2 (b) (c) (d) (e) (f) (f) (g) Contour evaluated at level 0.5 (a) Figure 106: (a)-(d)Constant orientation workspace of HD2 haptic device computed using Algorithm 2 at grid size 0.2, 0.1, 0.05 and 0.02; and (e)-(g) their corresponding workspace area computed with contour evaluated at level 0.5. 194 Figure 107: Workspace area approximation with Algorithm 2 evaluated at various contour levels, with grid size of 0.02, 0.05 and 0.1. Workspace area approximated with Algorithm 1 also plotted for the same grid sizes for comparison. Grid Size = Computation Time 0.02 Boundary Points Grid Size = Computation Time 0.05 Boundary Points Grid Size = Computation Time 0.1 Boundary Points Grid Size = Computation Time 0.2 Boundary Points Algorithm 1 162.563 sec (144.563 sec filter, 18.90 sec sorting) 1253 4.91 sec (3.71 sec filter, 1.20 sec sorting) 497 4.04x10-1 sec (0.237 sec filter, 0.167 sec sorting) 264 4.61x10-2 sec (0.045 sec filter, 0.026 sec sorting) 120 Algorithm 2 9.5x10-3 sec 1807 2.6x10-3 sec 717 1.8-3 sec 355 1.4x10-3 sec 175 Table 12: Comparison of computation time and number of boundary points generated in each of the two algorithms, for various grid size used in estimating the constant orientation workspace of HD2. 195 A.3 Workspace Computation Examples While adding additional chains to form parallel system improves stiffness of the system, it also changes the workspace of the system. Here, with a 2-RRR (shown in Figure 108), 3-RRR (shown in Figure 109), and a 4-RRR (shown in Figure 111) planar parallel system, we show graphically how that the constant orientation workspace reduces with the addition of serial chain to the system. The location of the ground link as well as the orientation of the end-effector changes the workspace as well (shown in Figure 110). All these factors can be used as design variables if the design goal is to optimize the workspace of a system. (a) (b) (c) (d) (e) (f) Figure 108: Constant orientation workspace of a 2-RRR planar manipulator changes as the distance of their bases varied from (s) L 1.5 to (f) L 196 4.5 with end-effector angle held at zero. (a) (b) (c) (d) (e) (f) (g) (h) (i) Figure 109: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L Largest workspace exist when L 0.5 to L 1.7321 . 197 4.5 with end-effector angle held at zero. (a) (b) (c) (d) (e) (f) (g) (h) (i) Figure 110: Constant orientation workspace of a 3-RRR planar manipulator changes as the distance of their bases varied from L 0.5 to L Largest workspace no longer exist at L 1.7321 . 198 4.5 with end-effector angle held at 45 . (a) (b) (c) (d) (e) (f) Figure 111: Constant orientation workspace of a 4-RRR planar manipulator changes as the distance of their bases varied from L 2 to L 3.25 with end-effector angle held at zero. A.4 Manipulability of Parallel Systems Using Park and Kim work [119] as the benchmark, we compare our formulation with their work using a five-bar system and a six-bar system and the results matched very well. The five-bar system with two different actuation schemes is shown in Figure 112. Similarly, the six-bar system with two actuation schemes is given in Figure 113. 199 Result from [119] Both base joints are actuated Both 2 nd joints are actuated (a) (b) (c) Figure 112: Manipulability ellipsoid of a Five-bar manipulator with two different actuated joints compared with the result obtained from [119], at three different end effector locations (a), (b) and (c). 200 Result from [119] Both base joints and 2nd joint of left chain actuated Both base joints and 2nd joints actuated (a) (b) (c) Figure 113: Manipulability ellipsoid of a Six-bar manipulator with two different actuation schemes compared with the result obtained from [119], at three different end effector locations (a), (b) and (c). 201 Figure 114 shows how the manipulability ellipsoid changes based on inverse kinematic solution used in the analysis. It is therefore important to maintain a configuration while evaluating isotropy index, as shown in Figure 115. Same end-effector position and orientation w/ different inverse solution Figure 114: For the same end-effector position and angle, manipulability ellipsoid can be different due to inverse solution of each RRR chain. 202 Isotropy Index (a) (b) (a) (b) Figure 115: Inverse of Condition Number map across the workspace of a 3RRR parallel manipulator changes for different configurations. 203 On the other hand, manipulability ellipsoid also changes corresponding to the configuration of the chain (for example, spacing between each chain), as shown in Figure 116. Result from [1] Both base joints are actuated Both 2 nd joints are actuated Figure 116: Manipulability elliposoid changes as well as workspace as configuration changes. 204 A.5 Stiffness Computation Stiffness Mapping of 3RPR Manipulator Stiffness in -direction Stiffness in y-direction 0.5 0.45 1.1285 0.4 0.4 1.8309 1.2226 1.7394 98 80 02 00 0.35 0.35 1.3166 1.6478 1.4107 y-position 7 0.25 0.3 y-position 0. 5 19 0.000 56 0.3 7 0. 00 05 61 9 0.0 01 40 49 0.35 0. 00 08 42 9 88 52 9 02 0.0 1 966 0 0.0 49 40 01 0.0 0.0 0.0 02 01 52 96 88 69 0.5 0.45 0.4 y-position Stiffness in x-direction 0.5 0.45 1.5047 1.5988 0.25 1.5563 0.3 1.4647 0.25 1.3732 1.6928 97 0.000 561 0.2 0.2 0.0011239 0.0014049 0.15 1.2816 0.2 1.7868 1.1901 1.8809 0.15 0.15 1.0986 0.0019669 0.0025288 0.1 0.05 0.25 0.1 0.3 0.35 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.7 0.05 0.25 0.75 0.1 0.3 0.35 0.4 0.45 0.5 x-position (a) 0.55 0.6 0.65 0.7 0.05 0.25 0.75 0.3 0.35 0.4 (b) Stiffness in x-direction 0.65 0.7 0.75 0.4 1.7 27 1 1.3 38 6 0.35 1.4 22 3 y-position y-position 0.6 Stiffness in y-direction 1.2 55 0.35 0.3 1.5 05 9 1.6 40 8 1.5 54 4 0.3 1.4 68 1 1.5 89 6 1.6 73 3 0.25 0.25 0.2 1.3 81 7 1.2 95 4 0.2 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.15 0.35 0.4 (b) Figure 117: Stiffness maps of the 3-RPR manipulator in the (a) and (c) y –direction with 0.55 0.45 0.4 0.15 0.35 0.5 x-position (c) 0.45 (a) 0.45 0.45 0.5 x-position 0.55 0.6 0.65 (c) –direction; (b) x –direction; 0 , (d), (e), and (f) are stiffness map with end-effector angle 90 . Comparing result with comparing results with [143] (top row). 205 Stiffness Mapping of 3RRR Manipulator Stiffness in x-direction Stiffness in y-direction 0.5 0.5 22 35 .1 21 .95 12 16 .0 976 24 .87 8 17 .56 1 14 .63 14 .63 41 24 .87 8 41 17 .56 1 15 .80 65 18.0645 22 .58 06 20.3226 29 .35 48 0.2 29 .35 27.0968 33.871 0.15 0.3 15 .8 0 65 20 .3 22 6 27 .096 8 29.2683 7 70 .1 13 11.70 73 0.2 0.25 61 17 .5 0.25 13 .54 84 0.3 78 24 .8 14 .63 41 20 .3 22 6 0.35 65 .80 15 12 .95 2 44 21 19 .0 y-position 51 .19 32 19 .0 2 44 1 .56 17 0.35 18 .0 6 45 15.80 65 0.4 18 .0 64 5 8 78 20 .4 0.3 87 .83 24 24 .87 8 y-position 0.4 24 .838 22 .5807 6 0.45 27 .8 0 49 49 .80 27 21.9512 26 .3 4 15 0.45 48 0.15 0.35 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.7 0.3 0.35 0.4 0.45 (a) 0.5 x-position 0.55 0.6 0.65 0.7 (b) Stiffness in x-direction (c) Stiffness in y-direction 0.45 0.45 0.4 0.4 27.0968 33.6585 36 .58 54 24 .83 87 y-position 0.3 5 64 .0 18 78 .48 20 49 .80 27 17 .5 61 22 .58 24 .87 20 8 .48 78 5 12 21 .9 16 .09 76 6 83 29 .2 0.25 06 .58 22 54 .58 36 21 .9 512 6 8 1 4 20 .48 7 .4 23 19.0244 0.3 24 .83 87 26 .32 20 0.35 8 .87 24 y-position 0.35 27 .8 0 49 24 .8 3 87 5 58 .6 33 20.3226 06 33 .8 71 0.25 27.0968 31 .61 29 36.129 40.6452 0.2 0.15 0.35 0.2 0.4 0.45 0.5 x-position 0.55 0.6 0.65 0.15 0.35 (d) 0.4 0.45 0.5 x-position 0.55 (e) 0.6 0.65 (f) Figure 118: Stiffness maps of 3RRR manipulator in the (a) x-direction, (b) y- direction, and (c) – direction, with end effector angle angle 0 . (d), (e), and (f) are stiffness map with end-effector 90 . Comparing result with [153] (bottom row). 206 Stiffness Map of 3RRR, 3RRR, 3RRR Manipulator (End-effector angle = 45 deg) (a) (b) (c) Figure 119: Comparison of the stiffness map of a 3-RRR manipulator in x-direction (2nd row), ydirection (3rd row), and -direction (4th row) with different joints actuated: (a) 3-RRR; (b) 3- RRR; and (c) 3-RRR manipulator. End-effector angle 207 45 . A.6 Workspace of HD2 Additional views of the planar workspace of HD2 device and spatial workspace with tilted handle are shown in Figure 120 and Figure 121. (a) (b) (c) Figure 120: Constant orientation workspace of (HD)2 at various heights: (a) isometric view; (b) side view; and (c) front view. 208 (a) (b) (c) (d) Figure 121: The constant orientation workspace of the HD2 haptice further reduced to about 0.51m3 when the handle is held at an rotated angle of 60 degree along the x-axi. Shown here are two different view angles of the resulting workspace. A.7 Inverse Kinematics of HD2 The upper chain is a spatial RRR manipulator (PHANToM 1.5 manipulator). The position vector of frame {5} expressed in frame {1} , is given by: 209 1 P5,x 1 L2 cos L3 sin( 2 1 P5 P5,y 2 3 ) 0 1 L2 sin P5,z (97) L3 cos( 2 2 3 ) The position of frame {5} , expressed in frame {F } , is given by: F P5 F P5,x 1 F P5,y L1 F P5,z P5,x cos P5,x sin 1 3 z0 1 F z0) (99) P5,x can be solved substituting Eqn. (97) into first and third row of Eqn. (98): F 1 P5,x P5,z L2 cos L2 sin We can first solve for 2 P5,x / cos ( F P5,z 1 L2 sin 2 L3 sin( 2 L3 cos( 2 L3 sin( F ) 3 2 2 P5,x / cos 1 ,N 2 L3 cos( 2 L3 sin( 2 L3 cos( 2 F 1 L1 ) P5,x / cos ) 3 ( F P5,z ) F (100) 1 L1 ) : L2 cos where M (98) is given by: 1 ( F P5,z and P5,z 1 Hence, if the position vector F P5 is known, 2 1 1 ) 3 ) 3 ( F P5,z 3 2 M N 3 P5,x / cos F ( P5,z ) L2 cos L2 sin 1 L1 ) (101) 2 2 L1 ) . Square both side of Eqn. (101) and add both equations, we get: A cos 2 B sin 210 2 C 0 (102) where A 2ML2, B M2 2NL2, C N2 Hence, the two possible solution for 2 2 atan2 3 atan2 M A2 (103) : B2 B 2 L23 . Using half-tan substitution: B2 C 2 C A B t L22 C2 A2 ,C A (104) Using Eqn. (101): Now we have shown that 1 , L2 cos 2, N 2 and 3 L2 sin 2 (105) 2 can be solved once we know the position of frame {5} expressed in frame {F } , F P5 . This can be determined from using the position vector of frame {7} expressed in frame {F } , is given by: F F P7 F P5 R5 5P7 (106) where F P7 is the end-effector position expressed in frame {F } , which is given as F P7 [xe T ze ] , and F R5 ye F R7 [ 5R7 ] 1 . F R7 is the orientation of the end-effector, function of 6 . 6 as Euler angle), and [ 5R7 ] , , which is a given quantity (with 1 7 R5 is only a is a measured quantity, hence F P5 can then be compute from: F To compute 4 P5 F P7 F R7 7R5 5P7 (107) , we look at 4P7 and 3P7 : 4 P7,x 4 P7 L7 sin P7,y 4 P7,z L6 cos 5 4 5 0 L7 cos 211 5 (108) L6 sin 5 3 4 P7,x 3 P7,x cos 3 P7 P7,y 4 L3 3 (109) 4 P7,z P7,x sin From the first and third row of Eqn. (109), 4 can be obtained by: 4 atan2( 3P7,z , 3P7,x ) 4 (110) To compute the position vector 3P7 , we use the following relation: F F P7 F 3 P7 where F R3 1 F P3 R3 R3 3P7 1 F F P7 RF and F P3 is a function of 3 1 , 2 (111) P3 and 3 only, which we already solved. F P7 is the end-effector position expressed in frame {F } . To solve for 5 , instead of using the position vector 4P7 shown in Eqn. (108), we look at 4P6 : 4 P6,x 4 P6 L6 cos 4 0 4 L6 sin P6,y P6,z From Eqn. (112), 5 5 (112) 5 can be obtained by: atan2( 5 4 P6,z , 4 P6,x ) (113) So now we are left with determining the position vector 4P6 . We can write the position vector F P6 as: F P6 F P4 212 F R4 4P6 (114) where F P4 and F R4 is known since they are function of 1 , 2 and 3 only. We are left to determine F P6 , which we can obtained from: F where F R6 F R7 [ 6R7 ] F 1 F P7 R7 since [ 6R7 ] F F P6 F P6 R6 6P7 (115) I . Hence, F P6 can be compute from: 1 F P7 R7 6P7 (116) As shown before, F P7 is the end-effector position expressed in frame {F } , which is given as F P7 [xe ye T ze ] , and F R5 F R7 [ 5R7 ] 1 . F R7 is the orientation of the as Euler angle), and vector 6P7 is end-effector, which is a given quantity (with , , only a function of L7 only. Hence, the vector 4P6 : F 4 P6 Once 4P6 is determined, 5 R4 1 F F P6 P4 (117) can be obtained by Eqn. (113). Till now, we have shown that once we know F P7 , is the end-effector position expressed in frame {F } , which is given as F P7 [xe ye T ze ] , and F R7 , the orientation of the end-effector with respect to frame {F } , which is a given quantity (with , , which is a measured quantity, we can determined 1 , 2 , 3 , as Euler angles), and 4 , and 5 6 can only be measured, due to the loop constraint. 213 , . Note that this inverse solution is not complete, in the sense that we assume known, whereas 6 6 is