a new approach to robot manipulation · manipulator, as well as a systematic methodology for...

117
A New Approach to Robot Manipulation by Jason Alexander Kereluk A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy University of Toronto Institute of Aerospace Studies © Copyright by Jason Alexander Kereluk 2016

Upload: others

Post on 31-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

A New Approach to Robot Manipulation

by

Jason Alexander Kereluk

A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy

University of Toronto Institute of Aerospace Studies

© Copyright by Jason Alexander Kereluk 2016

Page 2: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

ii

A New Approach to Robot Manipulation

Jason Alexander Kereluk

Doctorate of Philosophy

University of Toronto Institute of Aerospace Studies

2016

Abstract

This thesis discusses a new approach to the design, development and configuration

assignment of Reconfigurable Robot Manipulators. It details the engineering of a new

Modular, Autonomously Reconfigurable Serial manipulator platform, termed the MARS

Manipulator, as well as a systematic methodology for obtaining the optimum configuration

given a user-defined task. The platform consists of i) an 18-Degree-of-Freedom (DOF)

serial-link manipulator capable of locking any of its joints at any position in their

continuous range, such that it can emulate lesser DOF serial manipulators with different

kinematic and dynamic parameters, and ii) an integrated simulation and design

environment that provides a toolset for the design, implementation and optimization of a

desired manipulator configuration for a given task.

The effectiveness of the MARS Manipulator to adapt its configuration to various tasks is

examined by assuming two well-known configurations, SCARA and articulated, and by

performing a specific task with each of them. The variation in effectiveness of the two

configurations in terms of the end-effector trajectory, end-effector accuracy and power

consumption is discussed. Further, these configurations are optimized with respect to their

performance accuracy, and compared to their pre-optimized versions. Further, the

Page 3: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

iii

simulation is validated against with the physical hardware prototype, running the same

task.

A method of determining an optimal configuration based on a user-defined task is

presented, in which the joint space of the MARS Manipulator is treated as a 12-dimensional

smooth configuration manifold. The manifold is discretized and ranked based on a variety

of criteria, and then clustered into attractive and repellent regions. The user then specifies

which regions are desired in the target configuration, and the manifold is reduced in

dimension in order to maximize the number of attractive regions and minimize the number

of repellent regions. Six manipulators were synthesized using this approach, and their

effectiveness is compared.

Page 4: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

iv

Acknowledgments

First and foremost, I would like to thank Professor M.R. Emami for his role as my

supervisor, and providing me with his knowledge and guidance throughout my degree.

From the first meeting in his office in which we brainstormed ideas about thesis projects, to

my final defence, he continued to be a wealth of ideas and motivation through my doctorate

degree.

I would also like to acknowledge the hard work and advice of my Doctoral Evaluation

Committee: Prof. Gabriele D'Eleuterio and Prof. Tim Barfoot. They provided both critical

review of every stage of my research as well as valuable insights designed to improve the

quality of my work.

I would also like to extend my appreciation and gratitude to the entire space mechatronics

group, which I worked alongside for several years. In particular, I would like to extend a

work of thanks to Victor Ragulisa who served as my friend and colleague as we both

worked on our degree at roughly identical pace for the past 7 years.

Finally, to my parents, and my amazing sister whose support and advice was invaluable

throughout my entire degree, I can truly say that this would not have been possible without

each one of them.

Page 5: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

v

Table of Contents

Acknowledgments ........................................................................................................................................ iv

1 Introduction ...........................................................................................................................................1

1.1 Motivation .....................................................................................................................................1

1.2 Contributions .................................................................................................................................2

1.3 Literature Survey ...........................................................................................................................3

2 Basic Foundation ...................................................................................................................................7

2.1 Serial Robot Manipulators .............................................................................................................7

2.2 The Curse of Dimensionality ..........................................................................................................9

2.3 Birch Clustering........................................................................................................................... 11

3 System Design .................................................................................................................................... 14

3.1 Concept....................................................................................................................................... 14

3.2 Model ......................................................................................................................................... 14

3.3 Optimization ............................................................................................................................... 21

3.4 Hardware .................................................................................................................................... 25

3.5 Software ..................................................................................................................................... 27

4 Reconfiguration Approach.................................................................................................................. 33

4.1 Reconfiguration Overview .......................................................................................................... 33

4.2 Phase 1: Configuration Manifold Construction .......................................................................... 34

4.3 Phase 2: Discretization of Configuration Manifold .................................................................... 35

4.4 Phase 3: Ranking Discritized Configuration Manifold ................................................................ 36

4.4.1 Ranking Overview ............................................................................................................... 36

4.4.2 End-Effector Twist .............................................................................................................. 37

4.4.3 End-Effector Wrench .......................................................................................................... 38

4.4.4 End-Effector Accuracy ........................................................................................................ 39

4.4.5 End-Effector Compliance .................................................................................................... 40

4.5 Phase 4: Constructing the Feature Space ................................................................................... 47

4.6 Phase 5: Designing the Task-Group Weights .............................................................................. 49

4.7 Phase 6: Construct the Target Configuration Manifold ............................................................. 49

5 System Validation ............................................................................................................................... 53

5.1 Experiment Overview ................................................................................................................. 53

Page 6: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

vi

5.2 Configuration Comparison Results ............................................................................................. 54

5.3 Simulation Fine-Tuning ............................................................................................................... 60

5.4 Hardware Experimentation Results............................................................................................ 62

6 Reconfiguration Results ...................................................................................................................... 66

6.1 Clustering Implementation ......................................................................................................... 66

6.2 Determining Radii Multiplier ...................................................................................................... 69

6.3 Creating 6-DOF Manipulators ..................................................................................................... 72

6.4 Creating 3-DOF Manipulator Arm with Spherical Wrist ............................................................. 78

6.5 Comparing 6-DOF to 3-DOF plus Wrist ....................................................................................... 81

6.6 Comparing Reduced Manipulator to User Defined .................................................................... 84

6.7 Discussion ................................................................................................................................... 87

7 Conclusions and Future Work ............................................................................................................ 88

References .................................................................................................................................................. 90

Appendix A - Module Shop Drawings ......................................................................................................... 94

Appendix B - Proof of Theorem ................................................................................................................ 106

Appendix C - DH Parameters of Synthesises Manipulators ...................................................................... 107

Page 7: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

vii

List of Figures

Figure 1 - Summary of Reconfigurable Modular Robots [15] .................................................................4

Figure 2 - Serial Manipulator Link Diagram [33] .....................................................................................7

Figure 3 - Volume of a hypersphere for large dimensions ................................................................... 10

Figure 4 - CF Tree Visualized [37] .......................................................................................................... 12

Figure 5 - The MARS Manipulator CAD and Physical ............................................................................ 15

Figure 6 - Layout of Module A (smallest module) ................................................................................. 16

Figure 7 - Module Link Diagram ............................................................................................................. 17

Figure 8 - Length 1 Optimized and Actual Values ................................................................................. 23

Figure 9 - Length 2 Optimized and Actual Values ................................................................................. 24

Figure 10 - Module Mass Optimized and Actual Values ....................................................................... 24

Figure 11 - Joint Force Optimized and Actual Values ........................................................................... 25

Figure 12 - Braking Mechanism .............................................................................................................. 27

Figure 13 - MARS Software Architecture ............................................................................................... 28

Figure 14 - MARS IDSE Interface ............................................................................................................ 29

Figure 15 - Visualization of the Three Vectors ...................................................................................... 31

Figure 16 - Beam Stiffness Naming Convention .................................................................................... 41

Figure 17 - Compliance Beam Diagram ................................................................................................. 43

Figure 18 - Compliance evaluation flowchart ....................................................................................... 47

Figure 19 - Example of subspace by eliminating x dimension at x = 3 ................................................ 50

Figure 20 - Constructing Target Configuration Manifold Flowchart ................................................... 52

Figure 21 - SCARA Simulated Manipulator ............................................................................................ 53

Figure 22 - Articulated Simulated Manipulator .................................................................................... 53

Figure 23 - Articulated End-Effector Trajectory ................................................................................... 56

Figure 24 - SCARA End-Effector Trajectory........................................................................................... 56

Figure 25 - X End-Effector Mean Error .................................................................................................. 58

Figure 26 - X End-Effector Error Standard Deviation ........................................................................... 58

Figure 27 - Y End-Effector Mean Error .................................................................................................. 58

Figure 28 - Y End-Effector Error Standard Deviation ........................................................................... 58

Figure 29 - Z End-Effector Mean Error .................................................................................................. 58

Figure 30 - Z End-Effector Error Standard Deviation ........................................................................... 58

Figure 31 - Theta End-Effector Mean Error ........................................................................................... 59

Figure 32 - Theta End-Effector Error Standard Deviation ................................................................... 59

Figure 33 - Task Power Consumption .................................................................................................... 59

Figure 34 - X End-Effector Error Optimization for SCARA ................................................................... 61

Figure 35 - Z End-Effector Error Optimization for SCARA ................................................................... 61

Figure 36 - X End-Effector Error Optimization for Articulated ........................................................... 61

Figure 37 - YEnd-Effector Error Optimization for Articulated ............................................................ 61

Figure 38 - Z End-Effector Error Optimization for Articulated ............................................................ 61

Figure 39 - Theta End-Effector Error Optimization for Articulated .................................................... 61

Page 8: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

viii

Figure 40 - Objective Function for SCARA ............................................................................................. 62

Figure 41 - Objective Function for Articulated ...................................................................................... 62

Figure 42 - Joint 1 Experimental vs Simulation Trajectory .................................................................. 63

Figure 43 - Joint 2 Experimental vs Simulation Trajectory .................................................................. 63

Figure 44 - Joint 3 Experimental vs Simulation Trajectory .................................................................. 64

Figure 45 - Twist Maximum and Mean Values ...................................................................................... 67

Figure 46 - Twist Joints Excluded from Clustering ............................................................................... 68

Figure 47 - Radii Multiplier Test for Twist Space ................................................................................. 71

Figure 48 - Radii Multiplier Test for Compliance Space ....................................................................... 71

Figure 49 - Vx Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 50 - Vy Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 51 - Vz Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 52 - x Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 53 - y Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 54 - z Comparison for Manipulators 1 and 2 ........................................................................... 74

Figure 55 - dy Comparison for Manipulators 1 and 2 ............................................................................ 75

Figure 56 - Vx Comparison for Manipulators 3-5 .................................................................................. 80

Figure 57 - Vy Comparison for Manipulators 3-5 .................................................................................. 80

Figure 58 - Vz Comparison for Manipulators 3-5 .................................................................................. 80

Figure 59 - x Comparison for Manipulators 3-5 ................................................................................. 80

Figure 60 - y Comparison for Manipulators 3-5 ................................................................................. 80

Figure 61 - z Comparison for Manipulators 3-5.................................................................................. 80

Figure 62 - dy Comparison for Manipulators 3-5 .................................................................................. 81

Figure 63 - Vx Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 64 - Vy Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 65 - Vz Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 66 - x Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 67 - y Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 68 - z Comparison for Manipulators 6 and 2 ........................................................................... 83

Figure 69 - Vx Comparison for Manipulators 3 and User Defined Articulated ................................... 85

Figure 70 - Vy Comparison for Manipulators 3 and User Defined Articulated ................................... 85

Figure 71 - Vz Comparison for Manipulators 3 and User Defined Articulated .................................... 85

Figure 72 - x Comparison for Manipulators 3 and User Defined Articulated ................................... 85

Figure 73 - y Comparison for Manipulators 3 and User Defined Articulated ................................... 85

Figure 74 - z Comparison for Manipulators 3 and User Defined Articulated ................................... 85

Figure 75 - Dx Comparison for Manipulators 3 and User Defined Articulated ................................... 86

Figure 76 - Dy Comparison for Manipulators 3 and User Defined Articulated ................................... 86

Figure 77 - Dz Comparison for Manipulators 3 and User Defined Articulated ................................... 86

Figure 78 - x Comparison for Manipulators 3 and User Defined Articulated.................................... 86

Figure 79 - y Comparison for Manipulators 3 and User Defined Articulated ................................... 86

Figure 80 - z Comparison for Manipulators 3 and User Defined Articulated .................................... 86

Page 9: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

ix

List of Tables

Table 1 - Prismatic Joints ........................................................................................................................ 25

Table 2 - Revolute Joints ......................................................................................................................... 26

Table 3 - Van der Corput Sequence ........................................................................................................ 35

Table 4 - Joint Speed Information for the MARS Manipulator ............................................................. 37

Table 5 - Joint Force Information ........................................................................................................... 39

Table 6 - Joint Force Information ........................................................................................................... 41

Table 7 - Beam information .................................................................................................................... 42

Table 8 - Harmonic Drive Stiffness Value .............................................................................................. 45

Table 9 - Harmonic Drive Boolean Variables......................................................................................... 45

Table 10 - Workspace vs Link Length .................................................................................................... 54

Table 11 - Position and Time Checkpoints for the Task ....................................................................... 54

Table 12 - Joint Accuracy Information ................................................................................................... 57

Table 13 - Waypoint Accuracy for Simulated Data ............................................................................... 65

Table 14 - Waypoint Accuracy for Experimental Data ......................................................................... 65

Table 15 - Threshold Values ................................................................................................................... 66

Table 16 - Clustering Compression Ratio .............................................................................................. 69

Table 17 - Task-Group Weights for First Reduction ............................................................................. 72

Table 18 - Configurations for First Reduction ....................................................................................... 73

Table 19 - Decision Matrix for Manipulator 1 ....................................................................................... 76

Table 20 - Decision Matrix for Manipulator 2 ....................................................................................... 76

Table 21 - Number of Hyperellipses after each Decision ..................................................................... 77

Table 22 - Task-Group Weights for Second Reduction ......................................................................... 78

Table 23 - Configurations for Second Reduction .................................................................................. 79

Table 24 - Task-Group Weights for Third Reduction ........................................................................... 82

Table 25 - Configurations for Third Reduction ..................................................................................... 82

Table 26 - Configurations for User Defined Comparison ..................................................................... 84

Page 10: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

1

1 Introduction

1.1 Motivation

Before the invention of robot manipulators, manufacturing facilities were dominated by

fixed, single-purpose automatic machines. Such machines would repeat the same task over

again, with little or no variation. Robot manipulators were introduced to be adaptable to a

wide range of tasks. Through software re-programming and minor hardware modification,

such as changing the end-effector tool, the same robotic hardware is capable of performing

a range of fundamentally different tasks, such as welding, riveting, pick and place

operation, soldering, painting, etc.

Despite their adaptability to perform various tasks, different classes of serial manipulators

emerged which were better suited towards different tasks. The five main classes of serial

manipulators are Cartesian, cylindrical, spherical, Selective Compliance Assembly Robot

Arm (SCARA), and articulated. Each of these groups of manipulators can range from 4-6

Degrees of Freedom (DOFs), depending on the wrist configuration mounted on the arm.

While there is a significant overlap in the task capabilities of these five categories, they

have specific advantages and disadvantages for various tasks [1].

Reconfigurable robot manipulators are a class of manipulators that are able to emulate a

range of configurations. By including or removing joints, changing their relative positioning

and adjusting the control gains and software accordingly, a reconfigurable manipulator can

alter its kinematic, dynamic and control properties to suit a much wider range of tasks than

that of their conventional counterparts. This type of robot manipulator extends the existing

purpose of conventional manipulators, which is to have a single platform suitable for

performing a wide range of tasks, and provides a single platform able to emulate a wide

range of robots. Such a robot manipulator would be advantageous in situations in which a

human operator is not always readily available, or in which it is dangerous or expensive for

an operator to directly interact with the robot, such as space applications, hazardous

environments, clean room manufacturing, underwater applications, extreme climates, etc.

Further, a single platform that can emulate a wide range of existing manipulators has

Page 11: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

2

research and educational benefits. A complete set of robot manipulators is expensive and

infeasible for most institutions. Educational laboratories often have a single general

purpose robot for students to experience, and use simulation environments to study other

configurations. A reconfigurable robot allows for a wider range of robots to be experienced

and experimented on by students and researchers in a real world setting, as opposed to a

virtual environment.

1.2 Contributions

Current designs of reconfigurable serial manipulator all share similar shortcomings. Most

consist of discreetly reconfigurable modules that are assembled by a human operator.

Many offer only revolute actuation and fixed link-lengths between actuators.

The outcomes of this thesis include:

1. Conceptualization, development and prototyping of a new reconfigurable serial

manipulator that is able to assume a wide continuous range of configurations

autonomously.

2. Creation of a design and simulation environment to aid in designing new

configurations, and implementing them on the manipulator hardware.

3. Development of a reconfiguration method for autonomously obtaining new

configurations optimized for a user-defined task.

One major contribution of the work is the manipulator hardware/software platform,

termed as the Modular Autonomously Reconfigurable Serial (MARS) Manipulator. It is of

modular design which allows for easy reconstruction of the manipulator. While it is not

part of the fundamental design of the MARS Manipulator, this re-construction allows for

new reconfigurable systems to be created on the same platform. As the name suggests,

reconfiguring the manipulator is done autonomously without need of human interaction.

The manipulator can alter its link lengths through prismatic actuation, and can also include

these prismatic actuators in its final configuration. The manipulator is also continuously

Page 12: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

3

reconfigurable, allowing for an infinite range of configurations to be assumed, each with

varying kinematic, dynamic and control properties.

The other major contribution of the work is the method with which the MARS Manipulator

selects new configurations based on a user-defined task. Most optimizations applied to this

problem would take an unreasonable amount of time, memory and computational

resources to select an appropriate configuration. While intensive, the approach proposed in

this work can be accomplished with current technology, in a reasonable amount of time.

Further, the proposed reconfiguration approach is separated into an offline preparation

and an online optimization, allowing for multiple configurations to be optimized in a

reduced timeframe.

This thesis is supported by: 1 conference paper [2], 1 patent [3] and 2 journal papers

[4][5].

1.3 Literature Survey

The field of reconfigurable robotics is densely populated with a variety of topics. The vast

majority of reconfigurable robots are a small collection of modules that dynamically link

and separate between themselves, often in serial or parallel configurations. One of such

robots is the PolyBot,[6][7]. This system consists of two types of modules, making it non-

homogeneous. The first type is a 1-DOF revolute actuated module with two connection

faces. The second is a 0-DOF node module with six connection faces. While the modules are

capable of automatically locking and unlocking from each other, giving it some level of

autonomous reconfiguration, the modules are largely fixed in a similar sequence, fixing

their configuration. Another such robot, termed the M-TRAN robot has 2-DOF module pairs

that can also automatically connect to each other, reconfiguring the robot [8][9]. However,

a single module's actuation can only bear the mass of relatively few module pairs (less than

5), limiting its effective configuration range significantly.

The previous two robotic systems focused on revolute actuation. A prismatic-actuation

focused robot is a robot termed Telecubes[10]. This robotic system consists of 3-DOF

Page 13: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

4

prismatic modules that can dynamically connect and disconnect via magnetic coupling.

This robot also suffers from a shortcoming of only being able to bear the mass of a few

modules without exterior supports. Similarly, the prismatic reconfigurable robotic system

term the Crystalline Robots, in [11] , is another prismatic-actuation focused robot. The

modules are planer versions of the Telecubes robot, except that their two axis of motion

are kinematically linked to single actuator, creating a 1-DOF prismatic module. As a planer

robot, it is not designed to operate opposing gravity, thus limiting its effectiveness in real-

world robotic manipulation tasks. A robot of similar design, using revolute actuation, that

can bear the load of several modules opposing gravity is the ATRON robot [12][13][14].

The main shortcoming of this system is the limited range of revolute actuation in each

actuator, and the fixed orientation between modules, limiting it to a discrete range of

configurations. Several other early similar modular reconfigurable robots are summarized

in Figure 1.

Figure 1 - Summary of Reconfigurable Modular Robots [15]

Page 14: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

5

There has been comparatively very little work in the field of reconfigurable serial

manipulators. Of the few that have been developed, there has not been any work on

autonomous reconfiguration; rather, these manipulators rely on a human operator to

manually reconfigure the robot. One of these systems is the Reconfigurable Modula

Manipulator System (or RMMS) [16] [17]. The RMMS is a collection of pneumatically

powered revolute 1-DOF modules that when jointed together make a multi-DOF serial

manipulator. The system is reconfigured (as mentioned above) by a human operator,

making reconfiguration a time-consuming and involved process. Another, more recent

modular reconfigurable serial manipulator was developed by Chen et al. [18][19]. This

system is electrically powered instead of pneumatically, and is much smaller, lighter and

faster than the RMMS. Further, it is the first serial manipulator of its kind to employ

prismatic motion along with revolute motion, and to have a multi-DOF module: a 2-DOF

module is often used as the wrist of the robot. This serial manipulator system, like the

RMMS, is also manually reconfigurable. As it is lighter and less complex than the RMMS, its

reconfiguration time is reduced. It is still, however, a lengthy and involved process to

generate new configurations. It is also limited to a finite number of configurations, as it is

made up of discrete modules. A similar system with multi-DOF modules is presented in

[20].

There are several existing methods of determining an optimal configuration for a given

task: a heuristic search paired with simulated annealing as discussed in [20][22], genetic

algorithms as discussed in [23], a discrete optimization as discussed in [24], and the

method of Linguistic Mechatronics as discussed in [25][26]. While they all work to various

levels of success, they all share the same shortcoming: they are designed to work with

smaller DOF manipulators, typically 5-6 DOF. If these methods were applied on a

manipulator of similar dimension to the MARS Manipulator, it is likely they would either

take several years to complete, or else run out of memory. Two more works that focus on

task-based optimization of a serial manipulator use generic algorithms [27] and numerical

optimization methods [28] to fine tune the link lengths based on a user-defined task. This is

similar in style to the fine tuning portion of this work. An early attempt at an autonomously

reconfigurable serial manipulator is presented in [29]. Its major shortcomings are its

Page 15: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

6

limited potential DOFs and the lack of prismatic actuation. In addition, several

reconfigurable parallel manipulators have been reported in the literature. These parallel

manipulators have different task-properties than their serial counterparts, yet share the

same principles of reconfigurability. A 3-DOF reconfigurable parallel manipulator is

presented in [30], in which an additional actuator changes the kinematics and dynamics of

the manipulator, allowing for continuous and automatic reconfiguration of elements of the

manipulator. A parallel manipulator, named Cheope[31], is capable of altering its DOFs by

transitioning into 8 discrete configurations. Another parallel manipulator, named ReSl-Bot

[32], is a fixed 6-DOF robot, which uses additional 3-DOFs to automatically alter the

manipulator’s kinematics and dynamics continuously.

Page 16: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

7

2 Basic Foundation

2.1 Serial Robot Manipulators

A serial manipulator is a collection of links and joints, connected in series such that one end

of the manipulator is fixed to a ground, and the other end is free to move through the

workspace. Each joint is classified as either revolute or prismatic, depending on if the

joint’s motion is rotational or translational respectively. Regardless of its type, each joint

has an associated axis of motion. A standard method of representing the state of a serial

manipulator is DH (Denavit-Hartenberg) notation. The DH parameters describe how the

joints axes of the manipulator are located and orientated with respect to each other. It

should be noted that there are two conventions of DH parameters, termed standard and

modified. This work follows the standard DH convention.

Figure 2 - Serial Manipulator Link Diagram [33]

For each joint axis, a coordinate frame is attached such that the ith coordinate frame is

associated with joint i+1. The z-axis of frame {i} is aligned to be coincident with the axis of

motion for joint i+1. The x-axis of frame {i} is assigned such that it is mutually

Page 17: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

8

perpendicular to the z-axes in frames {i-1} and {i}. The y-axis is assigned to follow standard

right-hand-rule convention for coordinate frames. The DH parameters are then assigned

based on these coordinate frames. Figure 2 shows two adjacent joint axes with the four

associated DH parameters labelled. The parameters are defined as:

: The link length measured along between and .

: The twist angle measured about between and .

: The link offset measured along between and .

: The joint angle measured about between and .

A manipulator with n joints has an n-dimensional joint space Q which is a set of all possible

joint vectors . A mapping T exists which maps a vector from the space Q into the end-

effector space SE(3), termed the Special Euclidean Space.

(2.1)

This mapping is represented by a homogeneous transform matrix which can be

expressed as a product of the individual joint transform matrices:

(2.2)

A single joint’s transform matrix can be derived by the joints associated DH parameters:

[

] (2.3)

Traditionally, a serial manipulator is separated into an arm and a wrist. The arm (located in

the half closest to the base) is responsible for locating the end-effector, and the wrist

(located in the half closest to the end-effector) is responsible for orientating the end-

effector. This separation is traditionally done for two reasons. The first is, this separation is

Page 18: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

9

more intuitive for a human operator, as it not only mirrors our own anatomy, but also

allows for separation of location and orientation when using the manipulator. Second,

having a typical roll-pitch-roll or pitch-roll wrist on a 6-DOF serial manipulator satisfies the

conditions of Pieper's Theorem, which guarantees a closed-form solution of the inverse

kinematics of the manipulator.

2.2 The Curse of Dimensionality

When working with high dimensional systems, there is a phenomenon termed the "curse of

dimensionality" which counters intuition about the system. There are three relevant

aspects of this phenomenon explored in this work, computational infeasibility, volume

insignificance, and volume concentration..

The issue of computational infeasibility states that, as the dimension of the space increases,

even by a small amount, the number of points that must be considered to get a

representation of the space increases exponentially. For a discretization interval , the

number of points needed to be sampled for the unit space of dimension n is given by:

( ⁄ )

(2.4)

For example, if 5 points are to be sampled per dimension, a 2-D space would require 25

points. If the dimension of the space is increased to 6-D or 12-D, the number of required

sample points increases to 1.56x104 and 2.44x108. It is for this reason that, for higher

dimensional optimization, computation feasibility is of such high concern, and

discretization intervals are generally much larger than for lower dimensional spaces.

The issue of volume insignificance states that, as the dimension of a hypersphere increases,

its volume approaches zero. The volume of an n-dimensional hypersphere with radius r is

given as:

*

+ (2.5)

where the gamma functions are defined as:

Page 19: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

10

for

√ for { }

As n approaches infinity, the n-dimensional volume of the hyper sphere approaches zero.

This proof is shown by Stibor et al. in [34], and is illustrated in Figure 3.

Figure 3 - Volume of a hypersphere for large dimensions

The significance of this fact is that, it makes comparing volumes of hyperspheres of unequal

dimensions complicated. Generally it is avoided, and hyperspheres of different dimensions

are considered different classes of objects, not to be compared. Note that this feature

extends to hyperellipsoids.

The issue of volume concentration states that, as the dimension of a hypersphere

approaches infinity, the volume of the hypersphere becomes concentrated in a thin shell at

the hyperesphere's surface. The fraction of the volume which lies at a value between the

0 5 10 15 20 250

2

4

6

8

10

12

14

16

18Volume of a unit n-sphere

Dimension (n)

Volu

me

r = 0.8

r = 0.9

r = 1

r = 1.1

r = 1.2

Page 20: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

11

boundary of the hypersphere (of radius r) and a second concentric hypersphere of radius

such that is in [34] as:

(

)

(2.6)

A practical realization of this formula states that, for a hypersphere of dimension 12, 95%

of its volume lies at values between its radius of r and 0.78r. This fact, combined with the

issue of volume insignificance states that, for randomly sampled points in a high

dimensional space, populated with hyperspheres (or by extension, hyperellipsoids), each

point has a low probability that it will exist within a hypersphere. And of the points that are

located within a hypersphere, it is likely that they will be far from the hypersphere's centre.

2.3 Birch Clustering

The BIRCH (Balanced Iterative Reducing and Clustering using Hierarchies) is a hierarchical

clustering algorithm developed in 1996 by T. Zhang et al. [35][36]. Its main advantage over

previous clustering algorithms is its adaptability towards large data sets involving a high

number of dimensions. The algorithm completes only a single scan of the dataset, allowing

for new datapoints to be generated at runtime, and clustered immediately, thus eliminating

the necessity of storing all datapoints in memory at one time. Because of this, clustering

decisions are made with only the knowledge of the current datapoint in question, and the

existing clusters.

A unique feature introduced by BIRCH is the notion of Clustering Features (CF). A CF

contains information about the patterns (points to cluster) contained within its own

cluster. This information is comprised of three variables, number of patterns N, linear sum

, and squared sum SS (equation 2.7).

(2.7)

A CF is part of nodes in the cluster tree. Each node contains at most L or B CFs depending

on if it is a leaf or non-leaf node. These values of L and B are tuned according to the

memory concerns of the clustering operation. The CF tree is visualized in Figure 4.

Page 21: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

12

Figure 4 - CF Tree Visualized [37]

When a new pattern, with position is to be added to a CF, the cluster

feature is updated as follows:

(2.8)

(2.9)

(2.10)

A CF has proved to be additive, so that, when combining clusters, they can simply be added

together:

(2.11)

The centroid, radius and diameter of a cluster is defined as:

(2.12)

√∑ ( )

(2.13)

Page 22: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

13

√∑ ∑ ( )

(2.14)

These values are calculated assuming full knowledge of every point within the cluster. As

this is not the case, the location and size of a cluster can be calculated through the following

formulas.

(2.15)

(

)

(2.16)

In BIRCH clustering, there are traditionally five distance metrics used for determining both

the distance between clusters, and the distance a pattern is away from a cluster centroid.

This work uses the first of the five metrics: the centroid Euclidean distance (D0).

(2.17)

For more information about the details of the tree insertion and tree rebuilding algorithms,

refer to [35][36], which provided the bases of the code used in this work.

Page 23: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

14

3 System Design

3.1 Concept

From a structural standpoint, a reconfigurable manipulator can be thought of as a

redundant manipulator with an excess of DOFs required to perform a specified task, and as

such capable of performing such tasks with a subset of its DOFs. However, from a

performance standpoint the difference between reconfigurable and redundant

manipulators lies in how the robots utilize their extraneous DOFs when performing a task.

Redundant manipulators utilize their extra DOFs during runtime to satisfy additional task

requirements. These requirements can include optimizing one or more criteria, such as

energy consumption or accuracy, or additional activities, such as obstacle avoidance.

Reconfigurable manipulators, on the other hand, use a subset of their DOFs during task

runtime. This subset is selected offline in order to optimize the same criteria as in the

redundant case. While a redundant system may have a better performance for a given task,

it may not necessarily be optimally efficient in term of system complexity (with respect to

both structure and control) and energy consumption, since all joints are assumed to remain

active during the operation. Whereas for a reconfigurable manipulator the system can be

configured to use a minimum required number of DOFs with suitable joint parameters to

end up with a less complex and more energy-efficient system for performing a given task.

The MARS Manipulator platform is made up of two major components: a reconfigurable

serial manipulator (hereby referred to as the manipulator), and an Integrated Design and

Simulation Environment (IDSE), which allows the end-user to select or design the

manipulator configurations, simulate the operation in a virtual reality environment, and

operate the physical manipulator and access real-time feedback and recorded data; this is

discussed in detail later in this section.

3.2 Model

The manipulator hardware and its CAD model are shown in Figure 5. The manipulator has

18-DOFs, consisting of 12 revolute and 6 prismatic joints. It is able to physically reconfigure

Page 24: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

15

itself into serial manipulators of lesser DOFs to emulate either existing serial manipulator

configurations or to create new configurations. The reconfiguration is through utilizing the

18-DOFs and then locking specific joints, so that with the resulting unlocked joints a

desirable kinematic configuration can be achieved. Once the configuration is set, only the

unlocked joints will be actuated.

Figure 5 - The MARS Manipulator CAD and Physical

The joints are grouped into 6 modules, each with three joints, as shown in Figure 6. Each of

the modules has the same geometric layout consisting of one prismatic joint and two

revolute joints, which are mutually perpendicular ( ). Each module is connected to

the previous one so that the kinematic layout for the complete manipulator is (

). This layout was selected for three reasons. First, many serial

manipulators have a wrist mechanism located at the end of the manipulator. The wrist

configuration is usually either roll-pitch-roll or only pitch-roll. Such a wrist configuration

would be readily available with the selected layout. This would aid in creating existing

configurations, as well as in developing new configurations effectively. Further, having such

a wrist in each module, located throughout the manipulator, increases the versatility of the

reconfiguration task. The second reason for the selected manipulator layout is that by

having the first DOF in the module as a prismatic joint, various link lengths of the final

configuration can be achieved. Without a prismatic motion capability, link lengths would be

limited to combinations of unchanging module lengths, which would drastically reduce the

variety of the possible configurations that the manipulator can assume. The third reason

Page 25: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

16

for the selected manipulator layout is related to the mutual orientation of the 3-DOFs of

each module, as well as the orientation of the adjacent modules. With their selected layout

orientation, it is easy to have two or more prismatic joints parallel to each other. This

allows for the stroke of the prismatic actuators to stack, increasing the stroke of the active

DOF. Further, the stacking of actuators also allows to significantly increase the speed of

linear actuation, which is a design issue for serial manipulators employing a prismatic DOF.

Figure 6 - Layout of Module A (smallest module)

The following assumptions were made about the modules: i) the centre of mass of each

module is located at a distance l1 from the base, coincident with joint 2; ii) the masses of the

partial module before and after joint 2 are equal. Both of these assumptions eventually

become trivial when the worst-case scenario is assumed for equations (3.12) and (3.13).

The design of the manipulator modules were subjected to an optimization. First the

Jacobian for a generic module was developed. Each module can be treated as a 3-DOF serial

manipulator. The module’s Jacobian ( expressed in the module frame {M} is defined as:

v v v (3.1)

Page 26: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

17

where is the column matrix of velocity (linear and angular) components of the end of

the module in the {M} frame and is the column matrix of joint speeds.

Figure 7 - Module Link Diagram

Given the link diagram in Figure 7, the module’s Jacobian expressed in frame {M} is:

[ c c

]

(3.2)

where c c and

The expression of the Jacobian in frame {E} can be obtained using the rotation matrix

between frames {M} and {E}:

*

+ (3.3)

The force/torque matrix of the module under a static applied wrench f at the end of the

module (and expressed in frame {E}) is given as:

Page 27: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

18

f (3.4)

A basic set of functionality requirements for the MARS Manipulator is to lift a 1kg mass

10cm beyond the last module representing the end-effector. To ensure that the

manipulator can handle such a payload at any orientation, the maximum applied wrench to

the sixth module is assumed as:

f

(3.5)

The moment component in the z-direction was omitted as it does not affect module 6. For

simplicity, the pre-superscript and pre-subscript for an applied wrench are omitted as

follows:

f f

(3.6)

Given the manner in which the modules are connected, the frame {Mi} is the same as frame

{Ei-1}. The applied wrench to the subsequent modules can, therefore, be given by the

following recursive equation:

f

f (3.7)

where

[

] (3.8)

and

and

are the rotation matrix from frame {Ej} to frame {Ej-1} and the skew

symmetric matrix of the vector from the origin of frame {Ej} to {Ej-1} expressed in frame

{Ej}, respectively. For a given module, these matrices are:

[

c c

c

c c c

] (3.9)

Page 28: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

19

[

c c

c c

c c

] (3.10)

From equations (3.4) and (3.7), the joint torque for each module can be calculated due to

an applied static wrench. In addition to this load, each module must be able to lift the

weight of the modules after it. To calculate this additional load, assume that the centre of

mass for each part of a module is located at its midpoint. Then, the y-component of the

centre of mass for module j in {M} is:

y

(3.11)

Assuming that the mass of the two parts of each are equal and considering a worst case

scenario where all modules after a module a have their , the distance of the centre of

mass of module b from the end of module a can be as:

d

(∑

) (3.12)

In this case, the equivalent wrench applied to the end of module a due to the force of

gravity of module b is described as:

w [ g

d y g] (3.13)

The expression of vector g is dependent on the configuration on all modules below

module b. To consider the maximum gravitational wrench of module b upon joint 1 or joint

2 of module a, this vector is assumed along either y or z , respectively. Note that the force

of gravity of module b cannot cause a torque on joint 3 of module a.

To include the gravitational wrench, equation (3.7) can be amended as follows:

f

f [

g

(d y

) g

] (3.14)

where

Page 29: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

20

y c

(3.15)

z [

c

c

] (3.16)

The above equations describe the wrench applied to all modules due to a static load and

the forces of gravity. Through utilizing equation (3.4), this can be transformed into joint

force/torque. Although a worst case scenario is considered for the effect of the

gravitational wrench in equation (3.14), the expressions y and z

must still be assumed

for configurations which create maximum joint force/torque. Also the first part of equation

(3.14) must also be computed for maximum joint force/torque. However, the identification

of such configurations is computationally prohibitive for a design optimization task.

To simplify the problem, equation (3.14) can be modified to apply gravitational forces and

moments to joints directly. Due to a feature of the manipulator’s geometry, joint 2 of

module j must take the moment due to the gravity from all modules from j+1 to 6, whereas

joint 3 must take the moment due to the gravity from modules j+2 to 6. Therefore, the

maximum joint torque for each module in response to the applied load and the weight of

each module can be simplified to:

f [

∑ g

∑ ( gd )

∑ ( gd )

] (3.17)

where f in the above equation can be computed from equation (3.7).

The second simplification is applied to the matrix

. The maximum force translated

through a module occurs when , and does not depend on . Therefore, by setting

both to zero, the matrix

becomes:

[

( )

( )

]

(3.18)

Page 30: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

21

Intuitively, this matrix makes sense, as the force applied to each module will be the same

(10N in each principle direction), and the moment will be the original moment (in the x

and y directions, corresponding to joints 2 and 3, respectively) plus the added moment of

the applied force at an offset.

To find the maximum force/torque for each joint, equation (3.17) is resolved for

. The value of does not affect this torque, and the value

of is set at its maximum stroke of 50 mm.

3.3 Optimization

To optimize the design parameters of all six modules of the MARS Manipulator, the

following cost function was considered:

f (√∑ ) (3.19)

where

[ ]

subject to

c1.

c2. ∑

c3.

c4.

c5. (

)

c6.

c7.

Page 31: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

22

c8. g g

where

The first constraint assumes that in every module, is twice that of . This constraint is

made to accommodate the additional actuator that the first half of the module must

contain. The second constraint assumes an overall length of the manipulator in order to

provide a suitable workspace. The manipulator is a table-top robot, with a desired

reachable workspace of 2 m3. The structural length index of the robot, given in equation

(3.20), is a measure of how efficiently a robot utilizes its size to create a workspace [33].

√ ⁄ (3.20)

where L is the length sum of the manipulator as the sum of the links lengths and offsets,

and W is the volume of the reachable workspace. Traditionally, a QL value of between 1 and

1.3 is considered desirable for an articulated serial manipulator containing a combination

of prismatic and revolute joints [38]. Hence, choosing a conservative index of 1.3 for QL

with the desired workspace gives a length sum of 1.64 m.

The third and fourth constraints enforce the types of modules. The six modules would be

grouped into types A, B and C, as shown previously in Figure 5. This reduces the design and

fabrication time of the manipulator as well as the cost, as only three types of module are to

be produced, instead of six.

The fifth constraint ensures that the resulting masses of the modules are sufficient to

provide the required torque. Three factors are used, a structure factor (SF), a prismatic

actuator factor (A), and a revolute actuator factor (B), defined as , g and

g. The actuator parameters were obtained by comparing a variety of

Page 32: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

23

available brushless DC motor and gearbox combinations, specifically the EC-flat line of

Maxon motors with SHD harmonic drives and the Firgelli linear actuators. It was found that

most of these actuator systems have force/torque to mass ratios close to these factors. This

is only an approximation, but it serves to constrain the optimization into realistic module

masses.

Figure 8 - Figure 10 show the results of the optimization for the module lengths and

masses, as well as the actual lengths and masses of the constructed MARS Manipulator. The

constructed manipulator was not able to exactly follow the guidelines that were resulted

from the optimization, due to the discrete selection of the off-the-shelf components.

Further, the mass of the MARS Manipulator was reduced where possible, as a larger mass is

never advantageous. The optimization simply gave an upper bound for the mass.

Figure 8 - Length 1 Optimized and Actual Values

1 2 3 4 5 60.1

0.12

0.14

0.16

0.18

0.2

0.22

0.24

0.26

0.28

Length 1

Module

Length

(m

)

Optimization

MARS Manipulator

1 2 3 4 5 60.05

0.06

0.07

0.08

0.09

0.1

0.11

0.12

0.13

0.14

Length 2

Module

Length

(m

)

Optimization

MARS Manipulator

Page 33: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

24

Figure 9 - Length 2 Optimized and Actual Values

Figure 10 - Module Mass Optimized and Actual Values

From the optimization, the resulting maximum values of joint force/torque were calculated

using equation (3.17). These values are compared with the actual actuator values used in

the MARS Manipulator in Figure 11. Note that the optimized value for the linear actuators

(Joints 1, 4, 7, 10, 13 and 16) are significantly higher than the optimized value. This was a

design decision based on the fact that a linear actuator must always move the maximum

mass of the manipulator, while revolute actuators move a varying, and often decreased,

effect of moment of inertia. The only actuators that are below the optimized worse case

were joints 3 (slightly), 9 and 15. All of these are the roll actuators in their respective

module. A more powerful actuator in these modules would have violated the mass

requirements. Instead, the length of modules B and C, and the mass of module B were

reduced below the optimized value, reducing the demand on these actuators. It is still

worth nothing that these joints represent the weak point of the manipulator.

1 2 3 4 5 60

1

2

3

4

5

6

7

8

9

10Module Mass

Module

Mass (

kg)

Optimization

MARS Manipulator

Page 34: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

25

Figure 11 - Joint Force Optimized and Actual Values

3.4 Hardware

Table 1 and 2 show the actuators specified for each module. Linear speed near the base and

end of the manipulator was compromised in favour of weight and size, as it is uncommon

for useful configurations to need high-speed linear joints in these locations. Similarly, near

the base, speeds for the revolute joints were traded for weight, as lower joint speeds near

the base can still produce the same end-effector speeds, due to the longer moment arm.

Type Actuator Max Force at Speed (N) Max Speed at Load (m/s)

C2 Firgelli FA-PO-35-12 667 0.012

C1 2x Firgelli FA-PO-35-12 312 0.05

B1,B2 Haydon-Kerk E43M4C

Double stack stepper / lead screw s17

289 0.05

A1,A2 2x Firgelli L12-50-100-12-P 50 0.009 Table 1 - Prismatic Joints

2 4 6 8 10 12 14 16 1810

0

101

102

103

Joint Force

Forc

e | T

orq

ue (

N | N

m)

Joint

Optimization

MARS Manipulator

Page 35: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

26

Type Actuator Max Torque at Speed (Nm) Max Speed at Load (rpm) C Pitch Maxon EC Flat-90 49.4 16.4 C Roll Maxon EC Flat-90 49.4 16.4

B Pitch Maxon EC Flat-90 49.4 16.4 B Roll Maxon EC Flat-45 (50) 9.43 23.2

Table 2 - Revolute Joints

The gear reduction for all revolute joints is accomplished through harmonic drive systems.

These gearboxes were chosen for three reasons: first, they have zero backlash, which is an

important feature in robotic joints; secondly, they are very compact, which was necessary

for satisfying the lengths reported from the optimization; and thirdly, they have integrated

cross-roller bearings to protect the gearboxes and actuators.

Each joint has position feedback through hall-effect sensors, potentiometers and encoders.

Force feedback is accomplished by a cantilever beam in each module which bears 100% of

the linear force. A strain gauge on these beams can measure the amount of deflection, and

translate it accurately into the force experienced by the linear actuator. A similar technique

is employed for the torque in the rotary actuators. A cross composed of four beams is

attached to the output of each revolute joint. By applying strain gauges to each of the four

beams, the force in each beam can be measured, translating into the torque.

In order for the manipulator to reconfigure itself to lesser DOF manipulators, it needs to

effectively remove selected joints from its kinematic layout. The joints, however, must be

removable in a continuous range of positions. Non-backdriving locking brakes were

designed for each joint, which can be engaged in any of the motor positions as shown in

Figure 12. Consequently, each DOF has the capability of holding its position statically at any

continuous displacement.

Page 36: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

27

Figure 12 - Braking Mechanism

Note that a complete set of shop drawings for a module can be found in Appendix A.

3.5 Software

The software platform for the MARS Manipulator is separated onto two PCs, as shown in

Figure 13. The first one, called the target machine, acts as a real-time kernel for operating

the manipulator. The second PC, called the host machine, runs the design and simulation

modules, and it controls the real-time operation of the target machine. The host machine is

accessible by remote users through the internet, as well as locally.

The host machine runs an Integrated Design and Simulation Environment (IDSE), where

users can design a suitable configuration and control parameters for the MARS Manipulator

for a given task, simulate its performance, and load the configuration onto the physical

setup. The host software is based on the MVC (Model-View-Controller) architecture

[39][40], and it is developed within the MATLAB/Simulink® environment, utilizing

SimMechanics™ physical modeling and animation modules.

Page 37: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

28

Figure 13 - MARS Software Architecture

There are 5 types of simulations which the user can run though the IDSE: forward

kinematics, inverse kinematics, forward dynamics, inverse dynamics, and controls. The

forward kinematics simulation takes the joint motion profiles as an input, and displays the

robots motion as an output. This is useful for identifying which joints induce the desired

end-effector motion and for better identifying the workspace of the manipulator. The

inverse kinematics takes an end-effector trajectory as an input, and displays the motion of

the robot, along with the joint trajectories required to make this motion. This is useful for

figuring out which joint trajectory combinations are required to do complex motions, such

as the end-effector following a linear trajectory. The forward dynamics allow the user to

specify joint torque and forces and observe how the manipulator behaves. Similar to

forward kinematics, it is useful for obtaining intuition in how joint forces affect the robot’s

performance. The inverse dynamics simulation allows the user to specify the joints

kinematic profile, and derives the forces and torques necessary to complete the inputted

motions. This is particularly useful in identifying which motor torque is needed to

accomplish a task, as well as which tasks are not possible due to motor limitations. Finally,

the controls simulation shows how the manipulator will respond if the user would use a

controller, such as a servo controller, to perform certain joint trajectories. The user is able

to custom-tune the controller, or employ an auto-tuner for the control gains. There are also

Page 38: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

29

built-in data acquisition functions to record joint kinematics and dynamics and end-

effector motion. The IDSE’s graphical user interface is shown in Figure 14.

Figure 14 - MARS IDSE Interface

Once the user has defined a configuration, there is a need to express the current kinematic

configuration of the MARS Manipulator in universally used parameters. This allows for a

comparison to other manipulator configurations, as no other manipulator uses the MARS

Manipulator parameters to describe their kinematics. The standard way of expressing a

robot’s kinematic configuration is the set of DH parameters. These parameters have two

conventions: standard[41] and modified[33]. Each convention has their own advantages

and disadvantages, but both are very similar and have almost equal capabilities. For this

system, the standard DH parameters are used.

Page 39: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

30

Mapping from a serial manipulator to the standard DH parameters requires assigning

several coordinate systems to the manipulator, one for each unlocked joint. The procedure

is as follows:

1. Find a point and unit-vector representing all z axes (axis of joint rotation or

translation) for the manipulator.

2. Find a point and unit-vector representing all x-axes (along the length for the link) for

the manipulator.

3. Update vectors from 1 and 2 to have a single point and two unit-vectors representing

each origin.

4. Assign DH parameters based on the coordinate systems.

Step 1:

The MARS Manipulator was designed such that the central axis of the manipulator

intersects every joint axis. Therefore, finding the point for each z-axis is done by

transversing the central axis until a joint is reached, and then the point is recorded.

Similarly, once a point has been recorded, the unit-vector for that axis is also recorded

based on the knowledge of what joint has most recently been reached. As the manipulator

is traversed, the passive joints need to be taken into account, as they change the direction of

the manipulator’s central axis. Once a joint (active or passive) was reached that is at a non-

orthogonal orientation, the joint rotation is applied. Orthogonal orientations are trivial,

because orthogonal rotation matrices are well established. To take into account non-

orthogonal rotations, the Rodriguez’ rotation formula is applied [42]:

uu uu c θ u θ; (3.21)

where: R: Rotation matrix to be applied

u: vector rotation is about

Θ: angle of rotation

Page 40: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

31

u: skew symmetric form of u

Step 2:

The x-axis must intersect the current and previous z-axes. The x unit-vector is simply the

cross product of the z unit-vectors; the direction can be corrected later on. The following

formulas are used to compute this point. First, the 3×3 matrix is described as:

(3.22)

Figure 15 - Visualization of the Three Vectors

where , and are the unit vectors for the preceding z-axis, the current x-axis, and the

next z-axis respectively, visualized in Figure 15. Next, the scalar c is found in (3.23). Note

that b1 can be set to zero by placing P2 on the first vector without loss of generality.

Therefore, b2 is simplified as simply b.

*abc+ (3.23)

The point that describes the x axis is then computed in (4)

Page 41: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

32

c (3.24)

where is the point that describes the next z-axis. The proof stating that the matrix is

non-invertible if and only if and are parallel is in appendix B. If this is the case, the

point can be taken as equal to the point . Further, the sign of b in equation 3.23 is

applied to the vector to ensure it is pointing in the right direction.

Step 3:

This step is nearly trivial, as it is simply an organizational step in terms of the algorithm.

The unit-vectors remain unchanged, just stored in a single variable. The single point is

taken as P2 as it intersects both the x and z axes.

Step 4:

Once the origins are established, finding the DH parameters is now a simple task, following

the established procedure for the standard DH convention:

ai: The distance between origins i and i-1 along xi

di: The distance between origins i and i-1 along zi

αi: The angle between zi-1 and zi

θi: The angle between xi-1 and xi

The distance variables (a and d) are calculated along the unit vectors pointing to the next

origin. The angular variables are calculated using equation 3.25, where θ is the angle

between two vectors, xand y.

θ c x y |x||y| (3.25)

Two solutions are present for this equation, but the second solution can always be rejected,

due to the nature of the vectors.

Page 42: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

33

4 Reconfiguration Approach

4.1 Reconfiguration Overview

The goal of the reconfiguration optimization of the MARS Manipulator is to determine a

well-suited configuration for a user defined class of tasks within a relatively short amount

of time, using the resources of standard PCs. The inputs of the optimization are a set of

task-group weights (explained in section 4.6), as well as a target DOF for the manipulator.

The output of the optimization is a list of joint positions in which to lock specific joints of

the manipulator, representing the task-based configuration.

The reconfiguration process consists of seven phases:

1. Construct the configuration manifold, .

2. Discretize into a set of points .

3. Rank based on manipulator criteria.

4. Construct the feature space .

5. Design the task-group weights.

6. Construct the target configuration manifold .

These phases are separated into an offline and an online group. The offline group (phases

1-4) is the reconfiguration preparation. The online stage (phases 5,6) is the reconfiguration

calculation. The reconfiguration preparation is performed only once, as part of the offline

setup of the manipulator. This preparation is then used to speed up runtime of the online

optimization. Between the two stages, a user defines a task which specifies optimization

criteria used by the optimization.

Page 43: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

34

4.2 Phase 1: Configuration Manifold Construction

An n-DOF serial manipulator’s kinematic layout can be represented with 4n DH

parameters: ai, di, αi, and θi [33]. From these parameters, n homogeneous transform

matrices, shown in equation 4.1, can be derived, one for each joint. Note that there are two

conventions for DH parameters, standard and modified. This thesis uses standard DH

notation.

[

] (4.1)

The set of all homogeneous transformation matrices from the base to end-effector,

equation 4.2, is a smooth manifold which is the configuration space [43].

{

} (4.2)

The configuration space for the MARS Manipulator is an 18-manifold which is topologically

expressed as the Cartesian product of its joints. The prismatic joints are all single

dimensional topological spaces homeomorphic to . The pitch joints are also

homeomorphic to as their range of motion is from [ . The Roll joints, with their

range of would be thought of as an isomorphism to a circle However, due to the

real-world application of these joints, the position of is very different from the position of

, largely due to wiring constraints. Therefore, the topological range is which is

also homeomorphic to . Practically speaking, the fact that the joint can achieve a position

exactly equal to is of no consequence. Therefore, the 18 dimensional configuration

manifold is homeomorphic to . If the configuration Manifold is of only the revolute

joints, it becomes a manifold homeomorphic to .

Alongside the configuration manifold is a second 6-manifold known as or the Special

Euclidean Group [44]. is a space which describes rigid body rotation and translation

through 3-dimensional space. The rotation through 3-dimensional space is described by

the rotation group whose elements are 3x3 rotation matrices . The topology of

is homeomorphic to the 3-dimensional real projective space . Translation

Page 44: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

35

through 3-dimensional space can be described as a single vector in . As translation and

rotation are independent, the space is homeomorphic to , the Cartesian

product of the isomorphic spaces of translation and rotation. The elements of can be

arranged as a 4x4 translation matrix of the form:

( *

+) (4.3)

For a serial manipulator, a point in the configuration manifold represents a pose of all

joints of the manipulator. A point in the Special Euclidian Group represents a pose of the

manipulator’s end-effector. It is by exploring the links between these two spaces that the

end-effector’s performance, as governed by the manipulator’s behaviour is reviled.

4.3 Phase 2: Discretization of Configuration Manifold

In preparation for creating the feature space (phase 3), the configuration manifold needs

to be discritized. The Van der Corput sequence is a method of densely discretizing the unit

interval (0,1), as discussed in [45]. The sequence increments a reverse binary number

preceded by a decimal point, then converted to base-10, as shown in Table 3.

Binary 0.12 0.012 0.112 0.0012 0.1012 0.0112 0.1112 Decimal 0.510 0.2510 0.7510 0.12510 0.62510 0.37510 0.87510

Fraction ⁄

⁄ ⁄

⁄ ⁄

⁄ ⁄

Table 3 - Van der Corput Sequence

There are two main advantages to using the Van der Corput sequence. The first is that the

quantization interval is decreased as the sequence continues to run. This allows the

algorithm to dedicate as much runtime as possible to the sequence, and as more time is

committed, the discretization becomes increasingly fine. The second advantage of this

sequence is in that it guarantees a dense coverage to the degree of the current quantization

interval [46]. Density is a measure of how completely a subset covers its parent space. A

subset is said to densely cover if every point in is sufficiently close to a point in .

Page 45: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

36

This measure of ‘sufficiently close’ is the current quantization interval of the Van der

Corput sequence.

The Van der Corput sequence is a one-dimensional discretization of the unit interval. To

cover multi-dimensions (12 in the case of the MARS Manipulator’s revolute configuration

manifold), the sequence must be extended to all dimensions. This is done with the aid of

equation 4.4 which calculates the ith number of the Van der Corput sequence.

(4.4)

where is a row vector of the binary bits representing the number i, (i.e.

) and j is the number of columns in . To cover N dimensions with m Van der

Corput numbers per dimension, DN vectors need to be generated that express every

permutation with repetition of numbers 1 through D. These numbers are then replaced

with their Van der Corput counterpart using equation 4.4. These resulting vectors become

the discritized representation of .

4.4 Phase 3: Ranking Discritized Configuration Manifold

4.4.1 Ranking Overview

Once the manifold has been discritized, the next phase is to rank each point against

performance features of the manipulator. There are four types of features needed for :

1. End-Effector Twist

2. End -Effector Wrench

3. End-Effector Accuracy

4. Manipulator Compliance

Each of these features is a metric of the effectiveness of the manipulator’s configuration.

When specifying the task (between phases 3 and 4), the user is able to give weights to these

features as to which are more important for their task. Each feature has an attractive and

repellent region; for example high accuracy is desirable, while low accuracy is to be

avoided. The features are also separated into x, y and z component directions, relative to

Page 46: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

37

the workspace. This allows the task to allow for larger constraints end-effector force in the

z-direction, for example, while relaxing the requirements on the x and y force. This example

would be a common constraint for pick and place operations.

4.4.2 End-Effector Twist

The end-effector twist refers to the linear and angular velocities of the manipulator’s end-

effector. Calculating the end-effector twist from the joint position and velocities is known

as the differential forward kinematics problem. The methods of obtaining the twist given a

point in the configuration space are well established. For each of the 3 principle axes: x, y

and z of the end-effector space, the maximum linear and rotational speeds are calculated.

For N potential joints, 6N scalar values must be calculated for each point:

. These values are termed , , , , , for joint i. These values are

calculated by inputting the maximum capable speed for joint i into the forward kinematics

formulation of the robot, with all other joint speeds at zero. For the MARS Manipulator,

these speeds are described in the following table:

Module Pitch Speed

(rpm) Roll Speed

(rpm) Linear Speed

(mm/s)

A 32.1 37.1 23.0

B 26.5 52.5 50.0

C 16.4 26.5 50.0

Table 4 - Joint Speed Information for the MARS Manipulator

The resulting 6-component end-effector motion based on these maximum speeds can be

calculated via a numerical representation of the Jacobian, or close-form equations of the

manipulator or a variety of other methods of forward kinematics. However, as only one

joint at a time is considered, and the rest are fixed, it simplifies into a one-variable equation

of a rotation or translation applied to a beam.

Based on the manipulator’s geometry, coordinate frames are attached to the location of

every actuator. These actuator frames are aligned such that their z-axis is along the axis of

motion for the joint, i.e. the rotational axis for revolute joints and the axis of motion for

Page 47: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

38

prismatic joints. For the purposes of evaluating twist (and subsequently wrench), the

directions of the x and y axes for these actuator coordinate frames are irrelevant. The

origins of these frames are at the intersection of the two links surrounding the joint. The

actuator frame of the actuator currently being tested is denoted as frame {a}. An additional

frame is attached to the end-effector, denoted as frame {e} aligned such that its z-axis is

along the approach vector of the end-effector.

There are two cases which must be considered to obtain the end-effector twist values: if

the joint in question is a) prismatic or b) revolute in nature. If the joint is prismatic, the

values for , and are all zero, as a prismatic actuator cannot impose an end-effector

angular velocity, regardless of the manipulator’s configuration. The values for , and

are given by equation 4.5:

(

) (4.5)

where is the corresponding value from Table 4and , and are the

components of the unit vector that describes (the axis of motion for frame {i}).

For the case of a revolute joint, the cross product of and the moment-arm from { } to { }

must be computed. This is shown in equation 4.6.

|

| (4.6)

where is the point describing the location of frame { }. As before, is the

corresponding value from Table 4. For calculating , and with a revolute joint,

equation 4.6 is used with , and in place of , and .

4.4.3 End-Effector Wrench

The end-effector wrench refers to the force and moment at the manipulator’s end-effector.

Similar to the twist, there are 6N values per point that must be calculated: 3 forces, 3

Page 48: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

39

moments for each of the N joints. These values are calculated in a very similar matter using

the maximum force/torque of the joints. Then, the resulting end-effector wrench is divided

into its 6 component variables: , , , , , .

Module Pitch Torque

(mNm) Roll Torque

(mNm) Linear Force

(N)

A 51.0 5.89 39.2

B 188 111 98.1

C 493 319 196.2

Table 5 - Joint Force Information

Both the end-effector wrench and the end-effector twist criteria depend on the property of

superposition, which states that the total behaviour of the end-effector (for velocity and

force) depends on the sum of the behaviour of the end-effector as a result of each

individual link.

It is interesting to note that these end-effector performances correspond to directions in

the base coordinate frame. The rationale is that a user would likely think of their task in the

base frame, and would find it more intuitive to assign performance criteria in this frame.

However, there are some conceivable cases in which performance in the end-effector frame

would be desired. Imagine a drill as the end-effector, and the user wants to make sure that

the joints can offset the torque created by the end of the drill. In this case, it would make

more sense to rank the points based on the end-effector frame. This could be easily done,

simply by adding another type of hypersphere to the configuration space, and using simple

modification to the above method and equations.

4.4.4 End-Effector Accuracy

The accuracy of the end-effector is commonly contributed to two sources, the resolution of

the sensors on the actuators, and the compliance of the gearbox and/or manipulator

structure. In this work, these two cases are handled separately as accuracy and compliance.

Therefore, end-effector accuracy is defined as the position error of the end-effector due to

Page 49: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

40

sensor resolution. There are 3N values to compute per point , the linear displacement

due to sensor resolution of the end-effector. The rotational accuracy of the end-effector is

considered perfect, due to the small angle approximation method.

Similar to twist and wrench, there are two separate methods depending on if the joint is

prismatic or revolute in nature. The same coordinate frames {a} and {e} are attached to the

manipulator as before. If a joint is prismatic, the accuracy vector is:

(4.7)

where is the joint accuracy of joint i. These were defined previously in Table 12.

If a joint is revolute, the accuracy vector is:

( ) (4.8)

This accuracy vector’s components are the x, y and z accuracies which represent the

accuracy rank for the point .

4.4.5 End-Effector Compliance

The compliance of the manipulator is how much the end-effector moves when a force is

applied. The measures of compliance are , , , , , which indicate distance ( )

and rotation ( quantities. The distances is measured in the three principal directions

(x,y,z), and the rotation is measured as the angle of the three vectors, normal, orientation

and approach. These variables are measured from an initial pose, which is the position and

orientation of the end-effector if the manipulator was a perfectly rigid body, to a final pose,

which is taking into account manipulator flexibility. These variables are calculated by

determining the change in position and orientation of a set of coordinate frames. The first

step is to divide the MARS Manipulator into 12 segments, each segment constituting half of

a module. These segments are treated as cantilever-beams with a certain torsional stiffness

( ), linear stiffness for tension and compression ( ) and bending stiffness ( and )

shown in Figure 16.

Page 50: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

41

Figure 16 - Beam Stiffness Naming Convention

These stiffnesses are only an approximation of how the manipulator experiences

compliance. However, as only a rough ranking is desired as opposed to a specific

calculation, this approximation is sufficient. The values of these stiffnesses are shown in

Table 6. These values were obtained by performing an FEA (Finite Element Analysis) on the

sub-module in question using SolidWorks and COSMOS solid modeling tools. Note that

these values are for structural stiffness only. There is also a stiffness due to the harmonic

drive gearboxes, which will be discusses later in this section.

Module Kt(Nm2/rad) Kl(N/m) Kb1 (Nm2) Kb2 (Nm2)

A - lower

A - upper

B - lower

B - upper

C - lower

C - upper

Table 6 - Joint Force Information

Equations 4.9-4.14, give the displacement of the end of a beam given an applied wrench.

Equation 4.9 is the rotation angle given a torque. Equation 4.10 is the linear compression

displacement. Equations 4.11 and 4.12 are the displacement and angle of bending given an

applied force. Equation 4.13 and 4.14 are the displacement and bending angle given an

applied moment. These are described as:

(4.9)

Page 51: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

42

(4.10)

(4.11)

(4.12)

(4.13)

(4.14)

The second step is to find the resulting wrench on the end of the segments.

Figure 17 shows two beams, i and j with respect to a base frame. Note that beam j is located

between beam i and the end-effector. A unit wrench is applied at the end-effector (frame

{e}).

Module Mass (kg) Length (m) Location of CG (m)

A - lower d d

A - upper

B - lower 1.385 d d

B - upper

C - lower 5.087 d d

C - upper 4.341

Table 7 - Beam information

Page 52: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

43

Figure 17 - Compliance Beam Diagram

The length, mass and location of centres of mass are shown in Table 7. Note that for lower

modules, length and location of the centre of mass are a function of d. This is because their

length changes based on the position of the linear actuator, which is governed by the point

. The position ( ) and origination (x, y and z) of all coordinate frames are known

with respect to the base frame {B}. The frame positions and orientations are calculated at

the beginning of the algorithm in a similar manner to the frames for calculating end-

effector wrench and speed. Based on these beams, the equations for the resulting force and

moment applied to beam i are given in equations 4.15 and 4.16.

(∑ ) (4.15)

(

) ∑ [(

[

]) ( )] (4.16)

Where is a rotation matrix from the base from to the jth frame, shown in equation 4.17.

{ }

Beam i

Beam j

{ }

{ }

{ } { }

Page 53: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

44

[

] (4.17)

The third step is to find the deflections, both angular and linear, of beam i due to the

equations 4.3-4.8. Equation 4.18 gives the change in length of beam i, in the base frame, due

to the applied force.

(

)

(4.18)

Equation 4.19 gives the deflection of beam i, in the base frame, due to the applied force and

moment.

(

(

)

(

)

)

( (

)

(

)

)

(4.19)

For the rotations, first the 3 principle rotations for the ith coordinate frame are calculated

using equations 4.20-4.22.

(

)

(

)

(

)

(4.20)

(

)

(

)

(4.21)

(

)

(

)

(4.22)

Note the presence of two additional constants, and . These take into account the

compliance of the harmonic drives of the robot. The MARS Manipulator employs harmonic

drive gearboxes which have inherent compliance. The value of is provided by the

manufacturer of these gearboxes, and is given in Table 8. For a given sub-module, there is

one harmonic drive at the end. For lower modules, the harmonic drive rotates about the

local x-axis, and for upper modules, it rotates about the local y-axis. Therefore, the variable

and are boolean variables which follow the values in Table 9.

Page 54: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

45

Module (Nm/rad) A - lower A - upper B - lower B - upper C - lower C - upper

Table 8 - Harmonic Drive Stiffness Value

i

Odd 1 0

Even 0 1

Table 9 - Harmonic Drive Boolean Variables

At this stage it is assumed that the values of produced by equations 4.14-4.16 are small.

Because of this assumption, it does not matter in what order these rotations are performed.

A rotation matrix can therefore be formed by multiplying principle rotation matrices

together. This rotation matrix is shown in equation 4.23, and is sometimes referred to as

the x-y-z fixed rotation matrix. Note that the pre-super script of i was dropped from this

formulation for simplicity.

[

c c c c c c

c c c c c

c c c

](4.23)

This rotation matrix is the amount frame {i+1} rotates due to bending of beam i. At this

stage, all beams after i are considered as rigid bodies. Therefore, all frames after frame {i}

can be rotated with equation 4.17. However, this rotation matrix is a rotation about frame

{i}. Therefore it must be pre and post multiplied by the rotation matrix in equation 4.17 to

translate it to and from the base frame. This is shown in equation 4.24.

[

]

[

]

(4.24)

Page 55: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

46

Due to the rotation of frame {i+1}, frames further down the link will translate as well as

rotate. This translation is described in equation 4.25, which uses a small angle

approximation. Clearly the value for is zero for

.

[ (

) ] [ (

) ]

[ (

) ](4.25)

Using equations 4.12, 4.13 and 4.18, a formula can be developed for the translation of

frame {j} based on an applied wrench and the masses of all links. This is shown as equation

4.26.

(4.26)

The fourth and final step is to evaluate equations 4.24 and 4.26 for all in sequence for

. This is explained by the flow chart in Figure 18.

Once this process terminates, the values of [

]

and

describe

the position of the end-effector based on the bending due to compliance. The difference of

these values with the end-effectors original positions represent the compliance of the

manipulator. The difference of position can be easily divided into three values , , .

The difference of the unit vectors describing orientation of the end-effector can be

represented by angles using the dot-product, shown in equation 4.27.

c *(

) (

)+ (4.27)

From this equation, values of , , can be generated. It is these 6 values, , , , ,

and , which represent the compliance rank for the point .

Page 56: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

47

Figure 18 - Compliance evaluation flowchart

4.5 Phase 4: Constructing the Feature Space

Once all the points in have values for the feature types, phase 4 is to cluster the points

by distance within each category. Each point can be evaluated against a certain criteria.

Based on this evaluation, it can be determined whether the point represents a positive

attribute, a negative attribute, or a neutral attribute. This is done by comparing the

evaluated value to a pair of threshold values, Tmax and Tmin. If the point is greater than Tmax

Start

Assign initial coordinate

frames

Set i = 1

Set j = i + 1

[

]

Evaluate

&

j = 13?

Set j = j + 1

i = 12? Set i = i + 1

End

yes

yes

no

no

Page 57: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

48

then it is deemed a positive attribute, if it is less than Tmin, it is deemed a negative attribute,

otherwise it is neutral. The positive attributes are clustered in one group of clusters, the

negatives in another and the neutral attributes are ignored. Therefore, an un-clustered

region of the space is assumed to have average performance value in the respective

category. The values of the thresholds are discussed in section 6.1.

This clustering is done via the BIRCH (Balanced Iterative Reducing and Clustering using

Hierarchies) clustering algorithm, first proposed in [35][36]. BIRCH is used because it is

designed to work for datasets that are very large and memory intensive, as well as for

dimension much higher than 2. One of the main advantages of BIRCH comes from the 3

variables that describe each cluster: Number of patterns, Linear Sum and Sum Squared (N,

, SS). Each of these variables can be updated as a new pattern is added to a cluster,

shown in equations 4.28 - 4.31.

(4.28)

(4.29)

(4.30)

(4.31)

These 3 variables can in turn be translated into the cluster’s centre of mass and variance:

(4.32)

(

)

(4.33)

Once the clustering is complete, each cluster is represented by a 12-dimensional ellipse.

The radii of the resulting hyperellipse is a function of the standard deviation, found in 4.34.

A multiplier is applied to each index of the standard deviation to obtain the associated

radius:

Page 58: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

49

for (4.34)

This multiplier ( ) is to be found experimentally, and is discussed in section 6.2.

4.6 Phase 5: Designing the Task-Group Weights

Phase 5 involved the user specifying design weights (termed the task-group) to govern the

optimization. Each of the criteria has 12 weights; a maximum and a minimum weight for

the influence in each of the 3 dimensions for translation, and 3 dimensions for rotation.

These weights range on the interval of [-1, 1], where a negative weight indicates an

undesirable trait, and a positive weight indicates a desirable trait. Note that a minimum

weight can be given a positive weight. This would trend the optimization to eliminate

performance in a certain area; for example, designing a planar configuration that has no

motion in the x-dimension.

4.7 Phase 6: Construct the Target Configuration Manifold

Phase 6 involves reducing the 12-dimentional configuration manifold into a lesser

dimensional target configuration manifold suited for the task-group defined in phase 5.

This manifold reduction takes the form of an optimization. This optimization is performed

by systematically eliminating dimensions of the manifold. If a single dimension is

eliminated, the resulting sub-manifold has dimension n-1. To eliminate a dimension, two

questions must be answered: which dimension is to be eliminated, and at what point on

that dimension. To help visualize this, picture the space with x, y and z coordinate axes.

The resulting subspace after eliminating a dimension is a plane perpendicular to the

dimension that was eliminated. However, an infinite number of planes exist for each

dimension, each one passing through a point on its associated axis. Figure 19 illustrates

this example by eliminating the x dimension at the point x = 3. This means that a point on a

dimension has to be chosen first before it can be eliminated.

Page 59: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

50

Figure 19 - Example of subspace by eliminating x dimension at x = 3

The first step in eliminating a dimension is to check all potential subspaces and find the

optimal point for elimination for each. A single dimension can be represented by a series

hyperellipses along a single axis; note that a hyperellipse may be above or below this axis,

the only relevant coordinate is the one associated with that axis.

First a search threshold ( ) is defined. This value is the resolution in which each dimension

is searched to find its optimal elimination point. At each point searched, the value for

elimination ( ) is calculated as a function of the dimension to eliminate (M) and the point

representing the point associated with the dimension, shown below:

∑ | | (4.35)

The value for elimination is essentially a signed sum of the square of the weighted volume

of all K hyperellipses that have an intersection of the point p on dimension M, where is the

weight associated with hyperellipse k.

The formula describing the region of a non-rotated N-ellipsoid is given by:

(

)

(

)

(

)

(4.36)

x

y

z

x = 3

Page 60: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

51

Where ri is the radius of the hyperellipse along the ith coordinate axis. The volume of this

hyperellipse is given by:

Γ +∏

(4.37)

where:

Γ a a for a t t

Γ a

√π for a t t { }

When a dimension M is eliminated, a resulting hyperellipse of dimension N-1 is created,

described by:

(

′ )

(

′ )

( M

𝑀 ′ )

( M+

𝑀+ ′ )

(

𝑁′ )

(4.38)

The N-1 new radii are given as:

′ √ (

𝑐𝑀 𝑝

𝑀)

(4.39)

where is the location of the centroid of the hyperellipse in dimension M.

Then, each dimension is searched for the optimal point. Once this point has been found for

each dimension, the dimension with the highest value is chosen for elimination, and the

process repeats. This is shown in Figure 20.

Page 61: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

52

Figure 20 - Constructing Target Configuration Manifold Flowchart

Page 62: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

53

5 System Validation

5.1 Experiment Overview

To demonstrate that the MARS Manipulator can effectively be reconfigured to various

configurations with their associated advantages, an experiment was performed involving

two common configurations. The two arm configurations selected for the experiment were

the articulated configuration ( || and the SCARA configuration ( || || ), and

they were first simulated in the IDSE (Figure 21 and Figure 22).

Figure 21 - SCARA Simulated Manipulator

Figure 22 - Articulated Simulated Manipulator

The articulated and SCARA configurations have known advantages and disadvantages

associated with their practical application. The most prevalent advantage of an articulated

serial manipulator is its high workspace volume for a given amount of material in the arm

structure (indicated by the arm’s length sum), which is measured by the structural length

index , given in equation 3.20. Table 10 illustrates this ratio for the two configurations of

the MARS Manipulator.

The smaller for the articulated configuration translates into a greater range of tasks

capable by this manipulator.

Page 63: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

54

The advantage of a SCARA configuration over the articulated counterpart is its greater

accuracy in planar positioning of its end-effector. To illustrate this, an experiment imitating

a spot-welding operation was performed by each manipulator configuration, first in a

simulation environment and then with the physical robotic hardware. Four target points

were labelled (P1 through P4) on a plane in the manipulator workspace. The manipulator

was to approach 20cm above each target point, then lower and raise the end-effector to

touch the point, keeping its x and z coordinates constant. This process was repeated for all

target points. For the entire task, the approach vector remains in the –yR direction. Table 11

lists a time sequence for the task.

Configuration Link Length Sum (m) Workspace (m3) QL Articulated 0.96 0.48 1.222

SCARA 0.84 0.14 1.613 Table 10 - Workspace vs Link Length

Description Time (s) xR (m) yR (m) zR (m) (1) HOME POSITION 0 XHOME YHOME ZHOME

(2) APPROACH POINT P1 1 -0.15 0.2 -0.1 (3) LOWER TO TOUCH P1 1.5 -0.15 0.0 -0.1 (4) RETREAT FROM P1 2 -0.15 0.2 -0.1 (5) APPROACH POINT P2 3 -0.35 0.2 -0.1 (6) LOWER TO TOUCH P2 3.5 -0.35 0.0 -0.1 (7) RETREAT FROM P2 4 -0.35 0.2 -0.1 (8) APPROACH POINT P3 5 -0.35 0.2 0.1 (9) LOWER TO TOUCH P3 5.5 -0.35 0.0 0.1 (10) RETREAT FROM P3 6 -0.35 0.2 0.1 (11) APPROACH POINT P4 7 -0.15 0.2 0.1 (12) LOWER TO TOUCH P4 7.5 -0.15 0.0 0.1 (13) RETREAT FROM P4 8 -0.15 0.2 0.1 (14) RETURN TO HOME 10 XHOME YHOME ZHOME

Table 11 - Position and Time Checkpoints for the Task

5.2 Configuration Comparison Results

Three characteristics associated with the defined task are discussed in this section: the

Page 64: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

55

end-effector positioning, end-effector accuracy, and total manipulator power consumption.

The end-effector trajectories for the two manipulator configurations are shown in Figure

23 and Figure 24. The x, y, and z components refer to the end-effector point coordinates in

frame {R} (Figure 21 and Figure 22). From these graphs, a few interesting characteristics of

the configurations are revealed in terms of manipulator simplicity. Recall the conditions of

the task where the end-effector must move linearly only during the approach in the –y

direction, hereon referred to as the approach segment. For these time periods [1:2], [3:4],

[5:6] and [7:8] the x and z values are constant for both configurations. The SCARA

configuration accomplished this criterion by performing inverse kinematics at 8 points in

the workspace: at each of the target points P1 - P4 and at 20cm above each of these four

target points. Then, the manipulator was instructed to move between the points, as moving

linearly is a feature of the configuration. For the articulated configuration, inverse

kinematics (which was modified from the closed-form inverse kinematics of the PUMA

manipulator in [47]) was performed for the same 8 points, as well as for an additional 160

points during the approach segment. Note that for the time periods [2:3] and [6:7] where

the additional points were not computed, the SCARA configuration has a constant y value,

whereas the articulated has a non-constant y. Further, the inverse kinematics equations for

the SCARA configuration consist of 50% less code when compared to the articulated

configuration, further decreasing the runtime as well as the time to set up the task on the

part of the programmer.

Page 65: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

56

Figure 23 - Articulated End-Effector Trajectory

Figure 24 - SCARA End-Effector Trajectory

The end-effector accuracy is calculated from the sensor accuracy for each joint. There are

four variables that describe the relevant accuracy for this task: x, y, z and θ. The first

three of these variables give the translational error of the end-effector in the three

principle directions: x, y, and z. The fourth variable, θ, describes the error in the approach

vector of the end-effector. The orientation vector and the normal vector are ignored as they

are not of concern for a spot-welding task.

To obtain the accuracy metrics, first the forward kinematics of the manipulator is

performed on the ideal joint positions. This obtains the end-effector position and approach

vector:

( ) (5.1)

where is the displacement of the ith joint and n is the number of DOFs of the

manipulator’s configuration.

The forward kinematics is performed again, this time with a perturbation of the joint

position based on the accuracy of the joint:

( ) (5.2)

where is a random number on the interval [-1,1], and is the accuracy of joint i, defined

0 1 2 3 4 5 6 7 8 9 10-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3Articulated End-Effector Position

x

y

z

0 1 2 3 4 5 6 7 8 9 10-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3SCARA End-Effector Position

x

y

z

Page 66: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

57

in Table 12.

Module Pitch Accuracy (rad) Roll Accuracy (rad) Linear Accuracy (m)

A

B

C

Table 12 - Joint Accuracy Information

The translational error is calculated as:

[ x y z

] ab (

) (5.3)

The error in approach vector is calculated as:

|c

‖ ‖‖ ‖| (5.4)

The random number is part of a Monte Carlo statistical accuracy model similar to those

used in [48][49] and [49]. Without this term, equations 5.3 and 5.4 would provide the

maximum possible end-effector error. To compute for the Monte Carlo model, the accuracy

was calculated for each joint 2,000 times, and the resulting mean and maximum values

were obtained. Figure 25 - Figure 32 show the resulting mean and standard deviation of

the end-effector errors for each of the 4 accuracy metrics. From these graphs, it is clear that

the SCARA configuration has superior accuracy compared to the articulated configuration.

The only exception is in the y direction. This is due to the fact that for the SCARA

configuration motion in the y direction is controlled by 4 separate linear actuators working

in parallel, which increases the overall error. However, this error is still comparable to the

error from the articulated configuration for this direction. For the error in approach vector

( ), it is a feature of the SCARA configuration that this error remains zero for any position

of the end-effector.

Page 67: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

58

Figure 25 - X End-Effector Mean Error

Figure 26 - X End-Effector Error Standard

Deviation

Figure 27 - Y End-Effector Mean Error

Figure 28 - Y End-Effector Error Standard

Deviation

Figure 29 - Z End-Effector Mean Error

Figure 30 - Z End-Effector Error Standard

Deviation

0 1 2 3 4 5 6 7 8 9 100

1

2

x 10-4 X End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1.2

1.4x 10

-4 X End-Effector Inaccuracy Standard Deviation

Time (s)

Sta

ndard

Devia

tion (

m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100.5

1

1.5

2

2.5

3

3.5x 10

-4 Y End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100.4

0.6

0.8

1

1.2

1.4

1.6

1.8x 10

-4 Y End-Effector Inaccuracy Standard Deviation

Time (s)

Sta

ndard

Devia

tion (

m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100

1

x 10-4 Z End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1.2

1.4x 10

-4 Z End-Effector Inaccuracy Standard Deviation

Time (s)

Sta

ndard

Devia

tion (

m)

SCARA

Articulated

Page 68: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

59

Figure 31 - Theta End-Effector Mean Error

Figure 32 - Theta End-Effector Error Standard

Deviation

Figure 33 - Task Power Consumption

A final characteristic of the task that was analyzed was the manipulator power

consumption, shown in Figure 33. For motion between points, the SCARA configuration

used approximately half of the power needed for the articulated configuration. For the

approach segment, the SCARA configuration used between two and six times as much

power as the articulated configuration. This is due to the linear motion for the SCARA

configuration being produced by four separate linear actuators working in parallel, as

mentioned previously for the accuracy model,. In total, the SCARA configuration used twice

0 1 2 3 4 5 6 7 8 9 100

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09Theta End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 10-0.01

0

0.01

0.02

0.03

0.04

0.05

Theta End-Effector Inaccuracy Standard Deviation

Time (s)

Sta

ndard

Devia

tion (

m)

SCARA

Articulated

0 1 2 3 4 5 6 7 8 9 100

50

100

150

200

250

300

350

400Instantaneous Power Consumption

SCARA

Articulated

Page 69: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

60

as much power on average compared to the articulated configuration. The above results

highlight the advantages and disadvantages of the articulated and SCARA configurations

when assumed by the MARS Manipulator platform.

5.3 Simulation Fine-Tuning

In the previous section, the differences in the performance of the MARS Manipulator were

explored for the two configurations. These configurations, however, represented just one of

infinitely many versions of the SCARA and articulated class manipulators that the MARS

Manipulator can assume. Once a configuration is chosen for a certain task, the MARS

Manipulator is capable of fine-tuning the configuration, through use of its prismatic joints,

to satisfy a variety of criteria. This fine-tuning alters the link lengths and offsets

(parameters a and d in DH notation). In this section, each of the two configurations

previously discussed are optimized against the accuracy criterion. The objective function

for this optimization is given as:

f (√(

)

(

)

(

)

( θ

)

) (5.5)

subject to

where is the ith link length that the MARS Manipulator is capable of varying, and l and

are characteristic lengths and rotations used to normalize the errors. The values for l and

were taken as 1mm and 1, respectively. Using the MATLAB/Simulink® optimization

toolboxes, the configurations were optimized based on the objective function, and the task

was performed again for each configuration. The resulting manipulator accuracies are

shown in Figure 34 - Figure 39, as well as the value of the objective function in equation

(5.5), shown in Figure 40 and Figure 41. Note that link lengths only affect the x and z

accuracy for the SCARA class manipulator, while x, y, z and accuracies are affected for the

articulated class.

Page 70: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

61

Figure 34 - X End-Effector Error Optimization for

SCARA

Figure 35 - Z End-Effector Error Optimization for

SCARA

Figure 36 - X End-Effector Error Optimization for

Articulated

Figure 37 - YEnd-Effector Error Optimization for

Articulated

Figure 38 - Z End-Effector Error Optimization for

Articulated

Figure 39 - Theta End-Effector Error Optimization

for Articulated

0 1 2 3 4 5 6 7 8 9 101

1.5

2

2.5

3

3.5

4

4.5

5x 10

-6 X End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Optimizaed SCARA

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

3

3.5

4x 10

-6 Z End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

SCARA

Optimizaed SCARA

0 1 2 3 4 5 6 7 8 9 100.6

0.8

1

1.2

1.4

1.6

1.8

2

2.2x 10

-4 X End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

Articulated

Optimizaed Articulated

0 1 2 3 4 5 6 7 8 9 100.5

1

1.5

2

2.5

3

3.5x 10

-4 Y End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

Articulated

Optimizaed Articulated

0 1 2 3 4 5 6 7 8 9 100

1

x 10-4 Z End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

Articulated

Optimizaed Articulated

0 1 2 3 4 5 6 7 8 9 100.05

0.055

0.06

0.065

0.07

0.075

0.08

0.085

0.09

0.095Theta End-Effector Mean Inaccuracy

Time (s)

Err

or

(m)

Articulated

Optimizaed Articulated

Page 71: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

62

Figure 40 - Objective Function for SCARA

Figure 41 - Objective Function for Articulated

It was shown in the previous section that the MARS Manipulator was capable of inheriting

the advantages of both the SCARA and Articulated configurations. This section shows that,

through an optimization, both configurations can be improved through varying their link-

lengths. These two actions, choosing a configuration class and optimizing the link-lengths,

can be thought of as coarse and fine tuning of the manipulator configuration.

5.4 Hardware Experimentation Results

To help validate the simulation model, the spot-welding task was repeated on the physical

MARS Manipulator hardware in the articulated configuration. The joint trajectories for the

articulated arm (joints 1-3) are shown in Figure 42 - Figure 44.

0 1 2 3 4 5 6 7 8 9 100.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2x 10

-5 SCARA Objective Function

Time (s)

Obje

ctive F

unction

SCARA

Optimizaed SCARA

0 1 2 3 4 5 6 7 8 9 100.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

0.11

0.12

0.13Articulated Objective Function

Time (s)

Obje

ctive F

unction

Articulated

Optimizaed Articulated

Page 72: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

63

Figure 42 - Joint 1 Experimental vs Simulation Trajectory

Figure 43 - Joint 2 Experimental vs Simulation Trajectory

Page 73: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

64

Figure 44 - Joint 3 Experimental vs Simulation Trajectory

The experimental data was processed through a noise reduction filter, as the sensor data

had periodic outlier errors. Also note that for the experimental data, the speed of the task

was reduced, so as to prevent damage to the hardware manipulator. As such, the 14

waypoints are highlighted on the graph to compare with the simulation results. The

difference between the simulation results and the experimental data is largely due to the

task implementation. The simulated results perfectly follow a cubic position profile, as to

keep acceleration from becoming unreasonable. For the experimental results, a PID

controller was used to transition between waypoints, causing the motion profile to be

determined by the controller.

The accuracy of the experimental hardware was also compared to the accuracy of the

simulation. The two accuracies are shown in Table 13 and Table 14. From these tables, it is

clear that for most instances, the accuracy of the experimental results is comparable to the

accuracy of the simulated data. There are some exceptions, most notably at waypoints 9

and 10. However, for waypoint 8, the position accuracy of the experimental data is very

close to the simulated data. Given that waypoints 8 and 10 are the same point in both joint

and end-effector space, it means that the inaccuracy is not position dependent, rather it is

Page 74: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

65

likely due the previously mentioned sensor noise. Another potential source of such an error

could be due to the manner in which the end-effector approached the waypoints. Waypoint

8 was approached through a planar arc, while waypoint 10 was approached from a linear

vertical motion. This, however, is unlikely to be the case in here, as waypoints 5 and 7

shared the same property as waypoints 8 and 10. However, in the first case, waypoint 5,

which was approached by a planar arc, experienced the higher error value. In the second

case, waypoint 10 approached by a vertical linear motion, experienced the higher error

value. Ignoring these outlier cases, the experimental data and the simulated data for

accuracy are quite similar, validating the accuracy model used in the previous

optimizations.

WP (m) (m) (m) (deg) 2 1.04 x 10-4 1.38 x 10-4 3.23 x 10-4 0.100 3 6.90 x 10-4 2.34 x 10-4 1.53 x 10-4 0.111 4 1.04 x 10-4 1.38 x 10-4 3.23 x 10-4 0.101 5 3.17 x 10-4 1.24 x 10-4 3.55 x 10-4 0.153 6 3.71 x 10-4 1.38 x 10-4 2.04 x 10-4 0.147 7 3.17 x 10-4 1.24 x 10-4 3.55 x 10-4 0.153 8 4.57 x 10-4 1.24 x 10-4 1.33 x 10-4 0.153 9 4.22 x 10-4 1.38 x 10-4 2.26 x 10-5 0.147

10 4.57 x 10-4 1.24 x 10-4 1.33 x 10-4 0.153 11 2.58 x 10-4 1.38 x 10-4 2.21 x 10-4 0.100 12 1.39 x 10-4 2.34 x 10-4 6.52 x 10-5 0.111 13 2.58 x 10-4 1.38 x 10-4 2.21 x 10-4 0.100 14 4.24 x 10-4 2.95 x 10-5 3.45 x 10-5 0.112

Table 13 - Waypoint Accuracy for Simulated Data

WP (m) (m) (m) (deg) 2 1.70 x 10-3 1.85 x 10-4 5.72 x 10-4 0.250 3 3.70 x 10-4 1.87 x 10-4 3.51 x 10-4 0.425 4 6.97 x 10-4 3.61 x 10-4 6.62 x 10-4 0.100 5 6.10 x 10-3 2.03 x 10-4 6.74 x 10-4 0.750 6 1.30 x 10-3 2.30 x 10-3 3.10 x 10-3 0.950 7 2.40 x 10-4 5.48 x 10-4 5.86 x 10-4 0.175 8 6.43 x 10-4 1.91 x 10-5 3.69 x 10-4 1.51 9 1.30 x 10-3 2.30 x 10-3 2.90 x 10-3 1.68

10 1.10 x 10-3 2.00 x 10-3 2.20 x 10-3 1.68 11 2.07 x 10-4 6.18 x 10-3 9.42 x 10-4 0.124 12 5.99 x 10-4 7.84 x 10-4 9.09 x 10-5 0.7804 13 6.61 x 10-4 1.03 x 10-4 2.20 x 10-3 0.5640 14 1.50 x 10-3 1.50 x 10-3 1.21 x 10-4 0.2506

Table 14 - Waypoint Accuracy for Experimental Data

Page 75: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

66

6 Reconfiguration Results

6.1 Clustering Implementation

Because of the dimensional size of the configuration manifold, the phase 4 clustering was

implemented on a bank of 18 PCs. The features that were implemented in the clustering

process were Twist and Compliance, each requiring approximately 16,000 computational

hours to cluster. Each PC is of identical hardware specification, listed as follows:

- E2180 Dual Core CPU with 1MB Cache and 64 bit Registers

- 2GB RAM

- 320 GB HHD

- Windows Server 2003 (R2) OS

The PCs were networked together in order to share data, and equipped with a scheduling

system, as their availability was limited.

Before the clustering process was run, the threshold values for evaluating the twist and

compliance criteria were determined. This was done by passing through the complete

space, evaluating each point, and saving the maximum value, minimum value and a running

average. The maximum and mean values are shown in Figure 45. The two threshold values

were taken as the maximum and minimum mean values respectively. This translates to the

notion of, a joint in a certain position is considered advantageous if it can achieve

performance equal (or greater) than the best joint in its average position. The same

analysis was completed for the compliance, and the results are summarized in Table 15.

Compliance (linear) 0.0084 m 0.0530 m

Compliance (angular) 0.3488 rad 0.3587 rad

Twist (linear) 0.0596 m/s 0.8657 m/s

Twist (angular) 0.33 rad/s 2.53 rad/s

Table 15 - Threshold Values

Page 76: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

67

Figure 45 - Twist Maximum and Mean Values

Because some joints have a maximum twist capability below the minimum threshold in

some directions, the following categories were not necessary to cluster.

Page 77: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

68

Figure 46 - Twist Joints Excluded from Clustering

Note that, even though the joint C1 Pitch can achieve well above the minimum threshold

value for , it is included on this table. This is because, the joint C1 Pitch is in the unique

situation of being directly connected to the base, and therefore has the same value for

across the entire space. This makes it irrelevant to cluster this particular attribute. Also,

note that prismatic joints at this stage are ignored. Prismatic joints are optimization during

fine tuning (section 5.3)

The clustering process was run using a combination of the Java implementation of the

BIRCH clustering method, from [35] and a complied MATLAB® space evaluation function,

running the Matlab Compiler Runtime (MCR). A summary of the clustering results in terms

of compression ratio is listed in Table 16. The initial size assumes an 8-byte (double)

variable for each of the criteria for the space.

Page 78: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

69

Initial Memory Size Clustered Memory Size Compression Ratio

A2Roll Twist 10.91 GB 0.62 MB 18026 : 1

A2Pitch Twist 16.4 GB 16.5 MB 1016 : 1

A1Roll Twist 16.4 GB 3.36 MB 4989 : 1

A1Pitch Twist 16.4 GB 20.8 MB 818 : 1

B2Roll Twist 21.83 GB 13.5 MB 1655 : 1

B2Pitch Twist 21.83 GB 17.5 MB 1277 : 1

B1Roll Twist 21.83 GB 7.83 MB 2855 : 1

B1Pitch Twist 21.83 GB 21.0 MB 1064 : 1

C2Roll Twist 21.83 GB 15.6 MB 1432 : 1

C2Pitch Twist 16.4 GB 22.5 MB 745 : 1

C1Roll Twist 18.2 GB 18.7 MB 996 : 1

C1Pitch Twist 7.28 GB 21.6 MB 345 : 1

Compliance 21.83 GB 42.2 MB 530 : 1

Table 16 - Clustering Compression Ratio

6.2 Determining Radii Multiplier

In order to determine an appropriate multiplier for the radii of the various hyperellipses,

several different multipliers were tested for various cases. For both twist and compliance

spaces, 1000 points were sampled randomly within the space. Each of these points was

evaluated against their threshold value and termed as a positive, a negative or a neutral

point. The neutral points were ignored, and the positive and negative points were checked

if they exist within the boundaries of the hyperellipses, given radii at various multiples of

their standard deviation (equation 4.34 section 4.7). A point is within a hyperellipse if it

satisfies equation 6.1.

( 𝑝

)

( 𝑝

)

( 𝑝𝑁

)

(6.1)

Page 79: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

70

where ri is the radius of the ellipsoid along the ith coordinate axis, xi is the ith index of the

centroid of the hyperellipse, and pi is the ith index of the point currently being evaluated.

A satisfaction variable for each class of hyperellipse (positive rotational, negative

rotational, positive linear, negative linear) is calculated by counting the number of points

that belong in that class of hyperellipse actually are contained within at least one

appropriate hyperellipse divided by the total number of points (both positive and negative

points) that exist within at least one appropriate hyperellipse. A sample calculation for the

satisfaction of a positive hyper ellipse is shown:

+

+ (6.2)

where N+ is the number of positive points that exists in at least one positive hyperellipse,

and N- is the number of negative points that exists in at least one positive hyperellipse.

Because of the computational intensity of this test, a smaller subset of joints were taken as

representative of the entire twist space. The joints selected were: A2 Roll, A1 Pitch, B2 Roll,

B1 Pitch, C1 Pitch. As there was only one compliance space, it was tested in full. The results

of the test are illustrated in Figure 47 and Figure 48.

The tests were completed for multipliers of 0.5, 1, 1.5, 2, and 2.5. For multipliers of 0.5 and

1, there were no points found existing within the hyperellipses, as they were too small. This

is not surprising because of the aforementioned curse of dimensionality. Based on the

above figures, it would seem that both a multiplier of 1.5 and 2 could be argued as most

appropriate. The difference would be, a larger hyperellipse would mean more choices in

reducing the dimension of the space, as more of the space is dominated by advantageous

and disadvantageous regions. As neither of the two choice offers a clear advantage, a lager

representative space is chosen, thus the multiplier of 2 is selected. This mirrors the

convention that a distance of 2 standard deviations away of a Gaussian distribution

captures the majority of the points within.

Page 80: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

71

Figure 47 - Radii Multiplier Test for Twist Space

Figure 48 - Radii Multiplier Test for Compliance Space

0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

Twist Summary

multiplier

Satisfa

ction

+ Linear HEs

+ Rotational HEs

- Linear HEs

- Rotational HEs

0.5 1 1.5 2 2.50

0.2

0.4

0.6

0.8

1

Compliance Summary

multiplier

Satisfa

ction

+ Linear HEs

+ Rotational HEs

- Linear HEs

- Rotational HEs

Page 81: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

72

6.3 Creating 6-DOF Manipulators

The first manipulators to create are two 6-DOF manipulators that have similarly high twist

in all directions, and varying compliance requirements. For this reduction, and all future

reductions, the search threshold is . The two manipulator's task-group weights

are defined in Table 17 (note that all compliance weights are zero unless otherwise

specified).

Weight Manipulator 1 Manipulator 2 vx min -0.9 -0.9

vx max 0 0.6 vy min -0.9 -0.9 vy max 0 0.6 vz min -0.9 -0.9 vz max 0 0.6

x min -1 -1

x max 0.25 0.25

y min -1 -1

y max 0 0.25

z min -1 -1

z max 0 0.25

dy min 0.5 0

Table 17 - Task-Group Weights for First Reduction

Based on these weights, the two manipulators are expected to have the following

characteristics relative to each other:

1. Both manipulators should have full motion in SE(3) for the majority of their

workspaces.

2. Manipulator 2 should have more maximum linear twist in all directions compared to

Manipulator 1.

3. Manipulator 2 should have more maximum rotation twist, especially in the y and z

directions.

4. Manipulator 1 should have lower compliance in the y direction compared to

Manipulator 2.

The final manipulator configurations are shown in Table 18.

Page 82: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

73

Joint Manipulator 1 Manipulator 2 A2 Roll -180° -180°

A2 Pitch A1 Roll

A1 Pitch 45° B2 Roll

B2 Pitch -90° B1 Roll

B1 Pitch C2 Roll -180° -180°

C2 Pitch -90° -90° C1 Roll 180° 180°

C1 Pitch 90° 90°

Table 18 - Configurations for First Reduction

At first glance, the two manipulators are very similar, with only 1 locked joint different

between them. To investigate the performance differences between the two manipulator

configurations, a joint trajectory was plotted that spans the complete workspace for each

manipulator. Then, each position in the workspace was evaluated in the relevant areas for

performance. The resulting evaluations were sorted in ascending order (otherwise, they

would appear as little more than white noise) and plotted in Figure 49 - Figure 55.

Page 83: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

74

Figure 49 - Vx Comparison for Manipulators 1 and

2

Figure 50 - Vy Comparison for Manipulators 1 and

2

Figure 51 - Vz Comparison for Manipulators 1 and

2

Figure 52 - x Comparison for Manipulators 1 and

2

Figure 53 - y Comparison for Manipulators 1

and 2

Figure 54 - z Comparison for Manipulators 1 and

2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vx Comparison

Workspace Point

Vx (

m/s

)

Manipulator 1

Manipulator 2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Vy Comparison

Workspace Point

Vy (

m/s

)

Manipulator 1

Manipulator 2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Vz Comparison

Workspace Point

Vz (

m/s

)

Manipulator 1

Manipulator 2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

2

4

6

8

10

12

14

16Omega x Comparison

Workspace Point

Om

ega x

(ra

d/s

)

Manipulator 1

Manipulator 2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

2

4

6

8

10

12

14

16

18Omega y Comparison

Workspace Point

Om

ega y

(ra

d/s

)

Manipulator 1

Manipulator 2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

2

4

6

8

10

12

14

16

18Omega z Comparison

Workspace Point

Om

ega z

(ra

d/s

)

Manipulator 1

Manipulator 2

Page 84: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

75

Figure 55 - dy Comparison for Manipulators 1 and 2

Based on the above results, the expected characteristics mirror what is observed. Both

manipulators have full motion in SE(3). Overall, Manipulator 2 has more maximum linear

twist compared to Manipulator 1, except in the x-direction, where it is reversed. Taking an

average over all three linear directions, however, the linear twist behaviour follows the

task-group weights specified. Manipulator 2 has increased maximum rotation twist in the y

and z directions. It is interesting to note that, because there are zero weights for

Manipulator 1 in the y and z maximum rotational twist, this inherently puts more of an

emphasis on the x direction maximum rotational twist, which is shown in the results in

Figure 52. Finally, Manipulator 1 has a lower compliance in the y for the majority of its

workspace compared to Manipulator 2.

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35Dy Comparison

Workspace Point

Dy (

m)

Manipulator 1

Manipulator 2

Page 85: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

76

Decision

1 2 3 4 5 6

V p V p V p V p V p V p

A2 Roll -2.11 90 -1.2 90 -0.06 -90

A2 Pitch -2.83 -180 -1.98 180 -0.87 180 -6.6x10-2 0 -2.0x10-2 -180 -3.1x10-3 -180

A1 Roll -2.86 90 -1.93 90 -0.87 -90 -5.4 x10-2 90 -1.5 x10-2 90 -3.0x10-3 -90

A1 Pitch -2.71 -45 -1.86 -180 -0.85 -180 -2.9 x10-2 -45 -1.0 x10-2 -180 -1.8x10-3 -180

B2 Roll -2.68 90 -1.78 0 -0.85 0 -4.4 x10-2 0 -1.3 x10-2 -90 -3.2x10-3 11.25

B2 Pitch -2.63 180 -1.82 0 -0.84 -180 -2.5 x10-2 -180 -5.5 x10-3 -180

B1 Roll -2.62 -90 -1.88 0 -0.85 -11.25 -4.3 x10-2 -90 -9.8 x10-3 -11.25 -3.9x10-3 -11.25

B1 Pitch -2.62 180 -1.72 -180 -0.83 -180 -2.6 x10-2 -180 -9.4 x10-3 45 -2.7x10-3 -180

C2 Roll -2.62 -90 -1.85 -90 -0.84 -90 -2.0 x10-2 -90

C2 Pitch -2.62 -180 -1.76 180 -0.84 180 -2.0 x10-2 180 -6.2 x10-3 -180 -7.0x10-4 -180

C1 Roll -1.62 90

C1 Pitch -1.81 180 -0.88 180

Table 19 - Decision Matrix for Manipulator 1

Decision

1 2 3 4 5 6

V p V p V p V p V p V p

A2 Roll -1.92 90 -1.11 90 -0.05 -90

A2 Pitch -2.72 -180 -1.91 -180 -0.86 180 -5.7x10-2 -45 -1.8x10-2 -180 -4.3x10-3 0

A1 Roll -2.73 90 -1.87 90 -0.86 -90 -4.5x10-2 90 -1.1 x10-2 90 -1.9 x10-3 0

A1 Pitch -2.65 -45 -1.81 -180 -0.85 -180 -2.4 x10-2 -45 -1.0 x10-2 -180 1.4 x10-3 90

B2 Roll -2.67 -78.8 -1.72 0 -0.84 11.25 -3.3 x10-2 0 -1.3 x10-2 -90 -2.2 x10-3 22.5

B2 Pitch -2.63 180 -1.71 0 -0.83 -180 -2.0 x10-2 -180 -4.8 x10-3 -180 -3.7 x10-4 -180

B1 Roll -2.62 -90 -1.74 0 -0.84 -11.25 -3.9 x10-2 -11.25 -7.3 x10-3 -11.25 9.6 x10-4 90

B1 Pitch -2.62 180 -1.68 -180 -0.83 -180 -1.8 x10-2 -180 -6.7 x10-3 45 1.2 x10-3 -45

C2 Roll -2.61 -78.8 -1.84 -90 -0.84 -90 -1.6 x10-2 -90

C2 Pitch -2.62 180 -1.74 180 -0.84 180 -1.8 x10-2 180 -4.8 x10-3 -180

C1 Roll -1.62 90

C1 Pitch -1.81 180 -0.87 180

Table 20 - Decision Matrix for Manipulator 2

Page 86: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

77

The decision matrices for creating Manipulators 1 and 2 are shown in Table 19 and Table

20 respectively. The column V and p are the value for elimination and point of elimination

for the dimension (M) associated with each joint, defined in equation 4.35 (chapter 4). It is

interesting to note that, while it is often the case that the position in which a joint is

remains constant for various optimizations, it is not always the case. For example, joint B2

Pitch for Manipulator 1, eventually gets locked in position -180°, for decision 2, its ideal

position if it were to be locked at that iteration was 0°. The other interesting piece of

information revealed by the decision matrices is that, not only did the two manipulators

end up in similar configurations, but largely their decision matrices are similar throughout

the entire reduction. It is only at the last two decision that they start becoming completely

different. However, despite their differences, they did both decided to lock joint C2 Pitch in

the same position, just at different times in the reduction. This is not surprising when you

observe that, when a joint is attractive to eliminates, but not the most attractive, it rarely

becomes unattractive later one. A counter example to this is joint B1 Pitch for Manipulator

2. For Decision 2 it was the third most attractive joint to eliminate, yet it remains unlocked

throughout the entire reduction. The final thing to note about the decision matrices is that,

as the manipulator is reduced in dimension, the values collectively decrease. This is

counter intuitive at first, because, as stated in the curse of dimensionality (section 2.2)

volumes reduce as dimensions increase. However, as the dimension reduces, so does the

total number of hyperellipses; this is illustrated in Table 21. Further, each time a

hyperellipse is reduced in dimension, its volume also reduces (unless it is centered on the

point in which the dimension is to be reduced). These two factors, therefore, overcome the

curse of dimensionality, reducing the total weighted volume as the dimension reduces.

Decision

1 2 3 4 5 6

Hyperellipses Manipulator 1

575054 196920 53095 8273 1270 172

Table 21 - Number of Hyperellipses after each Decision

Page 87: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

78

6.4 Creating 3-DOF Manipulator Arm with Spherical Wrist

As mentioned in section 2.1 and demonstrated in chapter 5, it is often advantageous to

design only the arm of the manipulator, and install a spherical wrist to take care of end-

effector orientation. To this end, two more manipulators were designed without weights

for rotational twist, and constraining the optimization to always leave the final 3 joints

unlocked (constituting a spherical wrist). The task-group weights for these two

manipulators are defined in Table 22.

Weight Manipulator 3 Manipulator 4 Manipulator 5 vx min -1 -1 -1

vx max 0 0.2 0.2 vy min -1 -1 -1 vy max 0 0.2 0.2 vz min -1 -1 -1 vz max 0 0.2 0.2

x min 0 0 0

x max 0 0 0

y min 0 0 0

y max 0 0 0

z min 0 0 0

z max 0 0 0

dy min 1 0.4 0.8

Table 22 - Task-Group Weights for Second Reduction

Based on these weights, the three manipulators are expected to have the following

characteristics relative to each other:

1. All three manipulators should have full motion in SE(3) for the majority of their

workspaces.

2. Manipulator 3 should have slightly decreased linear twist relative to Manipulators 4

and 5 which should have roughly equal linear twist relative to each other.

3. Manipulator 3 should have the lowest compliance in the y direction, and

Manipulator 4 should have the highest.

The final manipulator configurations are shown in Table 23.

Page 88: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

79

Joint Manipulator 3 Manipulator 4 Manipulator 5 A2 Roll

A2 Pitch A1 Roll

A1 Pitch -90° 0° B2 Roll 45°

B2 Pitch B1 Roll 90° 180°

B1 Pitch -90° -90° -90° C2 Roll 45° 22.5° 45°

C2 Pitch -90° C1 Roll 180° 180° 180°

C1 Pitch 90° 90° 90°

Table 23 - Configurations for Second Reduction

Similar to the previous section the three manipulators each had a joint trajectory that

spans their entire workspace plotted and evaluated, and their points sorted based on

performance. These results are graphed in Figure 56 - Figure 62.

The results mirror the expected characteristics, with one minor exception: Manipulator 3

ended up having the best linear twist performance. This is likely due to two reasons. First,

the individual performance outcomes are not completely independent. It is possible that,

because it was looking for a better performance in compliance, it stumbled upon a better

maximum for twist in the mean time. Second, because it does not have maximum twist

performance weights, the minimum weights are comparatively more emphasised. Its

improved performance could be partly due to better minimum avoidance.

With the exception of this one anomaly, the other expected characteristics are all upheld.

All three manipulators have full range of motion in SE(3), they all have roughly comparable

linear twist, and Manipulator 3 has significantly lower compliance in the y direction, with

Manipulator 4 having slightly worse compliance compared to Manipulator 5.

Page 89: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

80

Figure 56 - Vx Comparison for Manipulators 3-5

Figure 57 - Vy Comparison for Manipulators 3-5

Figure 58 - Vz Comparison for Manipulators 3-5

Figure 59 - x Comparison for Manipulators 3-5

Figure 60 - y Comparison for Manipulators 3-5

Figure 61 - z Comparison for Manipulators 3-5

0 1 2 3 4 5 6 7

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vx Comparison

Workspace Point

Vx

Manipulator 4

Manipulator 5

Manipulator 3

0 1 2 3 4 5 6 7

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vy Comparison

Workspace Point

Vy

Manipulator 4

Manipulator 5

Manipulator 3

0 1 2 3 4 5 6 7

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vz Comparison

Workspace Point

Vz

Manipulator 4

Manipulator 5

Manipulator 3

0 1 2 3 4 5 6 7

x 106

0

2

4

6

8

10

12

14

16

18Omega x Comparison

Workspace Point

Om

ega x

Manipulator 4

Manipulator 5

Manipulator 3

0 1 2 3 4 5 6 7

x 106

0

5

10

15Omega y Comparison

Workspace Point

Om

ega y

Manipulator 4

Manipulator 5

Manipulator 3

0 1 2 3 4 5 6 7

x 106

0

2

4

6

8

10

12

14

16

18Omega z Comparison

Workspace Point

Om

ega z

Manipulator 4

Manipulator 5

Manipulator 3

Page 90: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

81

Figure 62 - dy Comparison for Manipulators 3-5

It should be noted that, the rotational twist performance in this reduction is not due to the

optimization algorithm, but to the designer's choice of constraining the optimization to

include a roll-pitch-roll wrist at the end of the manipulator.

6.5 Comparing 6-DOF to 3-DOF plus Wrist

The next manipulator generated is another 3-DOF manipulator with spherical wrist which

can be compared with Manipulator 2, a 6-DOF generated manipulator. Table 24 outlines

the task-group weights for the new manipulator (Manipulator 6) as well as reiterating the

weights for Manipulator 2 for easy comparison. For this comparison, both manipulators

have no weights associated with compliance. Further, because Manipulator 6 has no

rotational twist weights, it was given slightly reduced linear twist weights to be more

comparable.

0 1 2 3 4 5 6 7

x 106

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35Dy Comparison

Workspace Point

Dy

Manipulator 4

Manipulator 5

Manipulator 3

Page 91: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

82

Weight Manipulator 6 Manipulator 2 vx min -0.9 -0.9

vx max 0.5 0.6 vy min -0.9 -0.9 vy max 0.5 0.6 vz min -0.9 -0.9 vz max 0.5 0.6

x min 0 -1

x max 0 0.25

y min 0 -1

y max 0 0.25

z min 0 -1

z max 0 0.25

Table 24 - Task-Group Weights for Third Reduction

The final manipulator configurations are shown in Table 25.

Joint Manipulator 6 Manipulator 2 A2 Roll -180°

A2 Pitch A1 Roll

A1 Pitch 45° B2 Roll

B2 Pitch 0° B1 Roll 22.5°

B1 Pitch C2 Roll 45° -180°

C2 Pitch 0° -90° C1 Roll 180° 180°

C1 Pitch 90° 90°

Table 25 - Configurations for Third Reduction

The results of the configurations are graphed in Figure 63 - Figure 68 below.

Based on these results, it is clear that Manipulator 2 has superior linear twist, while

Manipulator 6 has superior rotational twist. This would suggest that by imposing a

spherical wrist constraint on the optimization, it guarantees the resulting manipulator will

have better-than-most rotational twist capabilities, as that is the primary feature of a

spherical wrist, but at the cost of reduced capabilities in other areas. This is primarily due

to the fact that the reduction has fewer choice in terms of which joints to leave active and

which joints to lock.

Page 92: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

83

Figure 63 - Vx Comparison for Manipulators 6 and

2

Figure 64 - Vy Comparison for Manipulators 6 and

2

Figure 65 - Vz Comparison for Manipulators 6 and

2

Figure 66 - x Comparison for Manipulators 6 and

2

Figure 67 - y Comparison for Manipulators 6

and 2

Figure 68 - z Comparison for Manipulators 6 and

2

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vx Comparison

Workspace Point

Vx (

m/s

)

Manipulator 2

Manipulator 6

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Vy Comparison

Workspace Point

Vy (

m/s

)

Manipulator 2

Manipulator 6

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5Vz Comparison

Workspace Point

Vz (

m/s

)

Manipulator 2

Manipulator 6

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

2

4

6

8

10

12

14

16

18Omega x Comparison

Workspace Point

Om

ega x

(ra

d/s

)

Manipulator 2

Manipulator 6

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

2

4

6

8

10

12

14

16

18Omega y Comparison

Workspace Point

Om

ega y

(ra

d/s

)

Manipulator 2

Manipulator 6

0 0.5 1 1.5 2 2.5 3 3.5 4

x 106

0

2

4

6

8

10

12

14

16

18Omega z Comparison

Workspace Point

Om

ega z

(ra

d/s

)

Manipulator 2

Manipulator 6

Page 93: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

84

6.6 Comparing Reduced Manipulator to User Defined

The final comparison is between Manipulator 3, which was designed to have good overall

twist as well as reduced compliance in the y direction, and the articulated manipulator

designed with the MARS IDSE in chapter 5. The two configurations are summarized in

Table 26, and the results of their comparison are in graphed in Figure 69 - Figure 80.

Joint Manipulator 3 User Defined Articulated A2 Roll

A2 Pitch A1 Roll

A1 Pitch -90° 90° B2 Roll

B2 Pitch -90° B1 Roll 0

B1 Pitch -90° -90° C2 Roll 45°

C2 Pitch -90° 90° C1 Roll 180°

C1 Pitch 90° 0°

Table 26 - Configurations for User Defined Comparison

Page 94: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

85

Figure 69 - Vx Comparison for Manipulators 3 and

User Defined Articulated

Figure 70 - Vy Comparison for Manipulators 3 and

User Defined Articulated

Figure 71 - Vz Comparison for Manipulators 3 and

User Defined Articulated

Figure 72 - x Comparison for Manipulators 3 and

User Defined Articulated

Figure 73 - y Comparison for Manipulators 3

and User Defined Articulated

Figure 74 - z Comparison for Manipulators 3 and

User Defined Articulated

0 2 4 6 8 10 12 14

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vx Comparison

Workspace Point

Vx (

m/s

)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vy Comparison

Workspace Point

Vy (

m/s

)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.5

1

1.5

2

2.5

3

3.5Vz Comparison

Workspace Point

Vz (

m/s

)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

2

4

6

8

10

12

14

16

18Omega x Comparison

Workspace Point

Om

ega x

(ra

d/s

)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

2

4

6

8

10

12

14Omega y Comparison

Workspace Point

Om

ega y

(ra

d/s

)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

2

4

6

8

10

12

14

16

18Omega z Comparison

Workspace Point

Om

ega z

(ra

d/s

)

Articulated

Manipulator 3

Page 95: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

86

Figure 75 - Dx Comparison for Manipulators 3 and

User Defined Articulated

Figure 76 - Dy Comparison for Manipulators 3 and

User Defined Articulated

Figure 77 - Dz Comparison for Manipulators 3 and

User Defined Articulated

Figure 78 - x Comparison for Manipulators 3 and

User Defined Articulated

Figure 79 - y Comparison for Manipulators 3 and

User Defined Articulated

Figure 80 - z Comparison for Manipulators 3 and

User Defined Articulated

0 2 4 6 8 10 12 14

x 106

0

0.01

0.02

0.03

0.04

0.05

0.06Dx Comparison

Workspace Point

Dx (

m)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.02

0.04

0.06

0.08

0.1

0.12Dy Comparison

Workspace Point

Dy (

m)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09Dz Comparison

Workspace Point

Dz (

m)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8Tx Comparison

Workspace Point

Tx (

rad)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2Ty Comparison

Workspace Point

Ty (

rad)

Articulated

Manipulator 3

0 2 4 6 8 10 12 14

x 106

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2Tz Comparison

Workspace Point

Tz (

rad)

Articulated

Manipulator 3

Page 96: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

87

6.7 Discussion

From these results, it is clear that the reduction phase does produce manipulator

configurations that correspond to the task-group weights defined by the user. The

complete reduction phase took approximately 11-13 hours, running on a single PC of the

specifications listed in 6.1 Most of the time was consumed by choosing the first joint, taking

on average 9 hours. Choosing the 4th joint took on average 9 minutes, and both of the final

two joints required less than 1 minute. If the user, therefore, provided the first two joints to

be locked (and the position in which to lock them), the complete reduction procedure could

be completed in under an hour. Comparing these times to a brute force method, it takes the

same PC 1 second to evaluate 400 points in the configuration manifold. There are 8.3 x 109

possible configurations to evaluate, given the search threshold used. The manipulators

designed above had between 3 and 12 task-group weights each, which translates into a

brute force method taking between 720 - 2882 days to complete, although it would almost

certainly produce solutions of slightly superior quality.

Note that, for comparison sake, the DH parameters of the six synthesised manipulators are

in Appendix C.

Page 97: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

88

7 Conclusions and Future Work

This thesis produced a new reconfigurable serial-link manipulator termed the MARS

Manipulator and accompanying methodology for determining the optimum configuration

for the manipulator given a user-defined task. The MARS Manipulator is capable of

reconfiguring its 18 joints in order to assume a continuous range of manipulator

configurations. The IDSE developed alongside allows users to design and develop new

configurations, and then conduct simulations to test them before downloading them on to

the manipulator hardware. The configuration is optimized in two segments. A manifold

reduction processes configures the revolute joints of the manipulator in order to produce

an optimal configuration based on the task-group weights defined by the user, and then a

manipulator fine-tuning stage configures the prismatic joints, allowing the manipulator to

refine its configuration based on online criteria.

The MARS Manipulator is of modular design, consisting of 6 homogeneous modules of 3

cascading sizes. Each module has 3-DOFs: 1 prismatic and 2 revolute, all mutually

perpendicular. The manipulator module's design was optimized to minimize the

force/torque on each joint, given a worse-case configuration of the manipulator and a load

of 10N applied 0.1m from the end-effector. Based on the conceptual design, a prototype

was constructed complete with a software integrated design and simulation environment

to aid users in developing new configurations.

The hardware was validated by comparing it to two popular robot configurations:

articulated and SCARA. It was shown that the MARS Manipulator, when configured to

emulate these two configurations, shared both the strengths and weaknesses of the

associated real-world robots. Further, the two configurations were successfully fine-tuned

to improve their performance based on their end-effector accuracy.

The reconfiguration approach utilizes a 12-dimensional configuration manifold

representing the 12 revolute actuators of the MARS Manipulator. This manifold is

populated with sets of points representing positive and negative performance attributes of

the manipulator. These points are clustered into hyperellipses which are given weights by

the user that guide the optimization in systematically reducing the dimension of the

Page 98: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

89

configuration manifold. As the dimension is reduced, the number of DOFs of the

manipulator is reduced. The reduction is performed by checking each dimension for an

optimal reduction point, and then comparing each optimal point to each other to determine

the dimension with the highest value for reduction. This process is repeated until the

manifold is of the dimension specified by the user.

The application of the configuration optimization produced 6 manipulator configurations.

Each configuration was developed through different weights in the regions of end-effector

twist and manipulator compliance. The resulting configurations showed benefits in their

appropriate areas relative to each other, and relative to an articulated configuration

designed by a human designer using the IDSE.

There are 3 areas in which this work can be refined and taken into a new direction.

1. Use advanced BIRCH clustering techniques to refine the clusters further. There are a lot

of points in the space not contained within clusters, and possible improvements to the

end result can be achieved through refined cluster definitions.

2. Design a path-planning inverse kinematics methodology. The reduction creates a

configuration manifold with attractive and repellent regions that are analogous to

obstacles from a path planning perspective. If a road map were to be developed through

the manifold, one could create a path that produced a desired trajectory through SE(3).

This would be most useful for configurations above 6-DOF.

3. Implement a concurrent evaluation for control gains in the manifold reduction stage,

allowing for the control performance of the manipulator to be designed concurrently

with the configuration.

Page 99: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

90

References

[1] Pandilov Z, Dukovski V "A comparison of the characteristic between serial and parallel

Robots", acta. technica. 7; 1: 143-160, 2014.

[2] J. Kereluk, M.R. Emami, "A Remotely-Accessible Reconfigurable Platform for Robotics

Education", 120th ASEE Annual Conference & Exposition, 2013.

[3] J. Kereluk, M.R. Emami, "System, method, and computer program for autonomously

emulating robot manipulators of continuously-varying configurations",

US20140222198, US Patent and Trademark Office, 2014.

[4] J. Kereluk, M.R. Emami, "A New Modular, Autonomously Reconfigurable Manipulator

Platform", IJARS vol. 12, no. 71, 2015.

[5] J. Kereluk, M.R. Emami, "Configuration Optimization of a Modular Reconfigurable Serial-

Link Manipulator", Advanced Robotics, submitted September 2015.

[6] M. Yim, K. Roufas, D. Duff, Y. Zhang, S. Homans, “Modular Reconfigurable Robots in

Space Applications,” Autonomous Robots, Vol. 14 Numbers 2-3, pp. 225 - 237, March

2003.

[7] M. Yim, Y. Zhang, K. Roufas, D. Duff, "Connecting and disconnecting for chain sefl-

reconfiguration with PolyBot", IEEE/ASME Trans. Mechatron., vol. 7, no. 4, pg.442 -

451 2002.

[8] S. Murata, H. Kurokawa, “Self-Reconfigurable Robots,” Robotics & Automation, IEEE, Vol

14, Issue 1, pp. 71 - 78, March 2007.

[9] H. Kurokawa et al. "Distributed Self-Reconfiguration of M-TRAN III Modular Robotic

System", International Journal of Robotics Research, Vol. 27, No. 3-4, pg. 373 - 386,

2008.

[10] J. Suh, S. Homans, M. Yim, “Telecubes: Mechanical Design of a Module for Self-

Reconfigurable Robotics,” Robotics & Automation, IEEE, Vol 4, pp. 4095 - 4101, May

2002.

[11] D. Rus, M. Vona, “Crystalline Robots: Self-Reconfiguration with Compressible Unit

Modules,” Autonomous Robots, Vol 10, Number 1, pp. 107 - 124, January 2001.

Page 100: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

91

[12] D. Brandt, D. Christensen, “A New Meta-Module for Controlling Large Sheets of

ATRON Modules,” Intelligent Robots and Systems, IEEE/RSJ International Conference

on, pp. 2375 - 2380, November 2007.

[13] E. Ostergaard et al. "Design of the ATRON lattice-based self-reconfigurable robot",

Auton Robot, Vol.21, pg. 165 - 183, 2006.

[14] M. Jorgensen et al. "Modular ATRON: Modules for a self-reconfigurable robot",

International Conference on Intelligent Robots and System, IEEE, Oct, 2004.

[15] M. Yim, W. Shen, et al., “Modular Self-Reconfigurable Robot Systems,” Robotics &

Automation, IEEE, Vol 14, Issue 1, pp. 43 - 52, March 2007.

[16] Paredis C, Brown H, Khosla P, "A Rapidly Deployable Manipulator System", IEEE

International Conference on Robotics and Automation. 1434 - 1439, 1996.

[17] Kelmar L, Khosla K, "Automatic Generation of Kinematics for a Reconfigurable

Modular Manipulator System", IEEE International Conference on Robotics and

Automation. 663 - 668, 1988.

[18] Chen W, Lang G, Ho E, Chen I "Interactive-Motion Control of Modular Reconfigurable

Manipulators", IEEE International Conference on Robotics and Automation. 1620 -

1625, 2003.

[19] Chen I, Yang G "Inverse Kinematics for Modular Reconfigurable Robots", IEEE

International Conference on Robotics and Automation. 1647 - 1652, 1998.

[20] Bi Z, Lin Y, Zhang W, "The general architecture of adaptive robotic systems for

manufacturing applications", robot. cim-int. manuf. 26: 461-470, 2010.

[21] Paredis, C. and Khosla, P. "Synthesis Methodology for Task Based Reconfiguration

of Modular Manipulator Systems," Proceedings of the International Symposium on

Robotics esearch, Hidden Valley, PA, Oct. 2-5, 1993.

[22] C.J. Paredis and P.K. Khosla, “Kinematic design of serial link manipulators from task

specifications,” Int J Robot Res, Vol. 12, No. 3, pp. 274–287, 1993.

[23] I. Chen, J. Burdick, “Determining Task Optimal Modular Robot Assembly

Configurations,” IEEE International Conference on Robotics and Automation, pp 132 -

137, 1995.

[24] Z.M. Bi and W.J. Zhang, “Concurrent optimal design of modular robotic

configuration,” J Robotic Syst, Vol 18, pp. 77–87, 2001.

Page 101: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

92

[25] R. Chhabra, “Concurrent Design of Reconfigurable Robots using a Robotic Hardware-

in-the-loop Simulation”, Master’s Thesis, University of Toronto Institute for Aerospace

Studies, 2008.

[26] R. Chhabra, M.R. Emami, "Linguistic mechatronics," Advanced Intelligent

Mechatronics, 2008. AIM 2008. IEEE/ASME International Conference on , vol., no.,

pp.1315-1320, 2-5 July 2008.

[27] V. Kumar, S. Sen, et al., "Design Optimization of Serial Link Redundant manipulator:

an approach using global performance metric", Procedia Technology, vol. 14, pg 43 - 50,

2014.

[28] H. Dois, A. Jha, R. Mishra, "Task-based design optimization of serial robot

manipulators", Engineering Optimization, Vol. 45, No. 6, pg. 647-658, 2013.

[29] Vittor T, Willgoss R, Iqbal J "Proof of Concept of a Hyper Redundant Reconfigurable

Modular Manipulator System", Australian Conference Robotics and Automation

Association, 2007.

[30] Chi Z, Zhang D (2012) Stiffness optimization of a novel reconfigurable parallel

kinematic manipulator. Robotica, Available from:

http://dx.doi.org/10.1017/S0263574711000683. Accessed Aug 21 2014.

[31] Tosi D, Leganni G, Pedrocchi N, Righettini P,Giberti H, "Cheope: A new

reconfigurable redundant manipulator",. mech. mach. theory. 45: 611-626, 2010.

[32] Coppola G, Zhang D, Liu K "A 6-DOF reconfigurable hybrid parallel manipulator.

robot", cim-int. manuf. 30: 99-106, 2014.

[33] J.J. Craig, "Introduction to Robotics ‐ Mechanics and Control", Third Edition, Pearson

Prentice Hall, 2005.

[34] T. Stibor, J. Timmis, C. Eckert, “On the use of hyperspheres in artificial immune

systems as antibody recognition regions”, International Conference on Artificial

Immune Systems, proceedings of, 2006.

[35] T. Zhang et al., "1: A new data clustering algorithm and its applications", Data Mining

and Knowledge Discovery, Vol. 1, No. 2, pg. 141-182, 1997.

[36] T. Zhang, R. Ramakrishnan, M. Livny, “BIRCH: An Efficient Data Clustering Method

for Very Large Databases”, International Conference on Management of Data, Vol. 25,

No. 2, pp. 103-113, 1996.

Page 102: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

93

[37] V. Nemala, “Efficient clustering techniques for managing large datasets”, Thesis

Dissertation University of Nevada, LA, 2009.

[38] Kucuk S, Bingul Z "Comparative Study of performance indices for fundamental robot

manipulators",. robot. auton. syst. 57;7: 567-573, 2006.

[39] Kupp N, Makris Y "Applying the Model-View-Controller Paradigm to Adaptive Test",

IEEE des. test. comput. 29: 28-35, 2012.

[40] Chandakanna V, Vatsavayi V "A model view controller based Self-Adjusting

Clustering Framework", j. syst. software. 89: 193-206, 2014.

[41] Mark W. Sponge, "Sethhutchinson and M. Vidyasagar Robot Modeling and Control",

Wiley student edition, 2006.

[42] R. Murray, Z. Li, S. Sastry, “A Mathematical Introduction to Robotic

Manipulation”,Boca Raton, FL: CRC Press, 1994.

[43] S. LaValle, “Planning Algorithms”, Cambridge University Press, 2006.

[44] C. Belta, R. Kumar, “Euclidean metrics for motion generation on SE(3)”. Institution of

Mechanical Engineers, proceedings of the, vol. 216, no. 1, 2002.

[45] J. G. van der Corput. “Verteilungsfunktionen I.”,Akademie van Wetenschappen, vol.

38, pg 813–821, 1935.

[46] Poj Lertchoosakul, Radhakrishnan Nair, "Distribution functions for subsequences

of the van der Corput sequence", Indagationes Mathematicae, Volume 24, Issue 3, 13,

Pages 593-601, June 2013.

[47] Lee G, Ziegler M "A geometric approach in solving the inverse kinematics of PUMA

robots", Thirteenth International Symposium of Industrial Robotics and Robots,

Chicago, 1983.

[48] Li W, Zhao Y, Song Y, Yang Z, "A Monte-Carlo based stochastic approach of soccer

robot self-localization", IEEE Conference on Human System Interactions, 915-920,

2008.

[49] Moron C, Maganto F, Tremps E, Ramirez P, Garcia A, "Monte Carlo simulation of

circular grain growth", phys, status. solidi. c. 8; 11-12: 3135-3138, 2011.

Page 103: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

94

Appendix A - Module Shop Drawings

Page 104: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

95

Page 105: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

96

Page 106: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

97

Page 107: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

98

Page 108: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

99

Page 109: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

100

Page 110: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

101

Page 111: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

102

Page 112: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

103

Page 113: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

104

Page 114: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

105

Page 115: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

106

Appendix B - Proof of Theorem

Theorem:

det ||

where

2 3

Proof

|| det , sufficiency proof is trivial.

To prove necessity:

Let det

therefore

since

which means that has no projection on . As such, b = 0.

Therefore:

or ||

Page 116: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

107

Appendix C - DH Parameters of Synthesises Manipulators

Manipulator 1 i αi ai θi di 1 -90° 0m -90° 0m 2 -90° 0m -90° 0.2553m 3 -90° 0m -90° 0.1993m 4 -90° 0m 180° 0m 5 -90° 0m 180° 0.1720m 6 -90° 0m 180° 0m

Manipulator 2 i αi ai θi di 1 -90° 0m -90° 0m 2 -90° 0m 180° 0.2553m 3 -90° 0m 180° 0m 4 -45° 0m 90° 0.1993m 5 90° 0m -90° -0.1720m 6 -90° 0m 0° 0m

Manipulator 3 i αi ai θi di 1 -90° 0m -45° 0.2553m 2 -90° 0m 180° 0m 3 90° 0m 90° 0.1993m 4 -90° 0m 90° 0.1720m 5 -90° 0m 180° 0m 6 0° 0m 0° 0.0555m

Manipulator 4 i αi ai θi di 1 90° 0.2359m 180° -0.0977m 2 -90° 0m -112.5° -0.2775m 3 0° 0m 0° 0.1993m 4 90° 0m 0° 0.1720m 5 -90° 0m 0° 0m 6 0° 0m 0° 0.0555m

Page 117: A New Approach to Robot Manipulation · Manipulator, as well as a systematic methodology for obtaining the optimum configuration ... Table 1 - Prismatic Joints ..... 25 Table 2 -

108

Manipulator 5 i αi ai θi di 1 -135° 0.2775m -90° -0.3611m 2 45° 0.1993m 90° -0.2553m 3 -90° 0m -90° 0m 4 90° 0m 0° 0.1720m 5 -90° 0m 0° 0m 6 0° 0m 0° 0.0555m

Manipulator 6 i αi ai θi di 1 -90° 0m -120° 0m 2 -90° 0m -157.5° 0.4546m 3 -90° 0m 180° 0m 4 -90° 0m 180° 0.1720m 5 -90° 0m 180° 0m 6 0° 0m 0° 0.055m

User Defined Articulated i αi ai θi di 1 -90° 0m 90° 0.2834m 2 180° 0.2553m -90° 0.2775m 3 -90° 0m -90° 0.1993m 4 -90° 0m 90° 0.1720m 5 -90° 0m 180° 0m 6 0° 0m 0° 0.0555m