Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Ultra-High-Speed Cable-BasedRobots
by
Saeed Behzadipour
A thesis
presented to the University of Waterloo
in fulfillment of the
thesis requirement for the degree of
Doctor of Philosophy
in
Mechanical Engineering
Waterloo, Ontario, Canada, 2005
c°Saeed Behzadipour 2005
I hereby declare that I am the sole author of this thesis.
I authorize the University of Waterloo to lend this thesis to other institutions or individuals for
the purpose of scholarly research.
Saeed Behzadipour
I furthur authorize the University of Waterloo to reproduce this thesis by photocopying or other
means, in total or in part, at the request of other institutions or individuals for the purpose of
scholarly research.
Saeed Behzadipour .
ii
Abstract
The development of a new class of high-speed cable-based manipulators is presented in this
thesis and fundamental challenges specific to these manipulators are addressed. Cables are used
in the architecture of these manipulators to provide kinematic constraints to lower the number
of degrees of freedom and minimize the moving inertia. Five new designs of these manipulators
are presented which provide pure translational motion in spatial and planar workspace. Since
cables can only stand tensile forces, the rigidity of the cable-based manipulators becomes the
most essential issue in their design and operation. To address this, a systematic approach to
study the rigidity of these manipulators is developed. It is analytically proved that most of
these manipulators stay rigid everywhere in their workspace under any external load using a
spinal element that applies a constant pushing force on the end-effector.
Geometry is used in this work to develop a modeling approach to investigate the ability
of cable-based manipulators in the handling of payloads. Force and torque capacity of these
manipulators are defined as the set of all forces and/or torques they can apply before losing
their rigidity. Based on this, an optimum design procedure is developed for determining the
pretension of the cables when a symmetric force/torque capacity is required.
The stiffness and stability of cable-based manipulators are also studied. It is shown that
the cables’ pretension, necessary for the rigidity of these manipulators, affects the stiffness of
the manipulator and hence, may result in their instability. The conditions under which the
manipulator is stabilizable are derived. A stabilizable manipulator never becomes unstable due
to increasing the pretension of the cables.
Trajectory planning of cable-based manipulators is also investigated. A time-optimal trajec-
tory is found considering the condition of the cable tensions. Time-optimal technique along with
a non-optimal but more computationaly efficient method for real-time trajectory planning are
implemented and compared on DeltaBot. DeltaBot is a cable-based manipulator prototyped in
this research. It has three translational degrees of freedom and is aimed at high-speed pick-and-
place applications. DeltaBot is designed to be able to produce 4g of acceleration everywhere in
its workspace in any direction on a pay load of 1kg. DeltaBot has been successfully tested for
120 cycles of pick-and-place operations per minute.
vi
Acknowledgements
Whoever doesn’t thank others, hasn’t indeed thanked God.
Apostle of God, Mohammad (pbh)
This thesis would not have been possible without the generous support and patience, sound
technical guidance, and great encouragement of my supervisor Dr. Amir Khajepour. I owe a
debt of gratitude to him and beleive I have been truly lucky to have had him as a friend and a
great advisor in the course of this research.
Over the past three years, I have been blessed to gain the friendship and sincere support
of wonderful poeple in our research group. Robert Dekker, Edmon Chan and Hang Tran, in
addition to their great technical helps, provided me with a warm atmosphere in which anyone
enjoys the team work.
This research was supported by funds from Materials and Manufacturing of Ontario (MMO)
and Automation Tooling Systems (ATS). Thank you for your financial support of the research.
I greatly appreciate the companionship of many wonderful friends and colleagues who have
made my stay in waterloo a rewarding experience. Although I cannot list all their names,
I certainly remember their favours. Special thanks to Yashar Ganjali, Afshin Mantegh and
Mohammad-Taghi Hajiaghayi for the happiness they shared with me when I started my new
life in Canada. I also wish to acknowledge Ehsan Toyserkani and Hamid Karbasi and their kind
families who tried to make me feel like home when I was far from my own family.
Most importantly, I would like to express my sincere gratitude to my parents and sisters for
their great helps and supports. I especially thank my wife who has been always the first source
of inspiration and love during our two years of marriage Even though we were living far away
for the last two years, I was never forgotten in their blessings and prayers.
Finally, but definitely not least, I wish to thank the readers of my thesis, Professors S.
Lambert and E. Kubica for their helpful feedback and suggestions. I must admit that I am in
debt to many other people in one way or another. To all of them, I would like to say “thank
you”.
vii
Dedicated to
viii
Contents
1 Introduction 1
2 Literature Review and Background 4
2.1 Cable-based Parallel Manipulators . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Low Inertia Manipulators . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2 Large Workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.3 Cable-actuated Serial Link Manipulators . . . . . . . . . . . . . . . . . . . 11
2.1.4 Measurements and Force Control by Cable-based Manipulators . . . . . . 11
2.2 Cable Tensions Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Reduced DoF Cable-Based Manipulators 19
3.1 General Structure and Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Tensionability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 New Designs of Reduced DoF Cable-based Manipulators . . . . . . . . . . . . . . 26
3.3.1 BetaBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.2 DeltaBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3.3 DishBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.3.4 Planar DeltaBot and BetaBot . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4 Design of the Cable-based Manipulators 49
4.1 Design Strategy and Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . 50
ix
4.2 Optimum Spine Force: fs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.1 Force Capacity: Visualization and Analysis . . . . . . . . . . . . . . . . . 52
4.2.2 Torque Capacity: Visualization and Analysis . . . . . . . . . . . . . . . . 58
4.3 Maximum Motor Torques: Tmax . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.4 Maximum Cable tension: τmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.5 Maximum Error Gain: EGmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.6 Optimal Design for DeltaBot and BetaBot . . . . . . . . . . . . . . . . . . . . . . 70
4.6.1 Geometrical Synthesis of BetaBot and DeltaBot . . . . . . . . . . . . . . 72
4.7 Design Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.8 DeltaBot Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5 Path Planning of High-Speed Cable-based Robots 87
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.3 Geometrical Path Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
5.3.1 Definition and properties of B-splines . . . . . . . . . . . . . . . . . . . . 91
5.3.2 Path Generation by B-spline . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.4 Time-Optimal Trajectory Planning in Cable-based Manipulators . . . . . . . . . 96
5.4.1 Torque Limit Constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.4.2 Velocity Limit Constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.4.3 Cable Tension Constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.4.4 Finding the Time-optimal Trajectory . . . . . . . . . . . . . . . . . . . . . 106
5.4.5 Time-optimal Trajectory Planning in DeltaBot . . . . . . . . . . . . . . . 111
5.4.6 Experiment Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5.5 An Alternative Real-time Trajectory Planning Technique . . . . . . . . . . . . . 118
5.5.1 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
5.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6 Stiffness and Stability of Cable-based Manipulators 124
6.1 Stiffness Matrix of a Cable-based Manipulator . . . . . . . . . . . . . . . . . . . . 126
x
6.1.1 Stiffness of a Single Cable . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
6.1.2 Stiffness of a Fully Parallel Cable-based Manipulator . . . . . . . . . . . . 132
6.2 Stabilizability of a Cable-based Manipulator . . . . . . . . . . . . . . . . . . . . . 136
6.3 Sufficient conditions for Stabilizability . . . . . . . . . . . . . . . . . . . . . . . . 138
6.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
7 Conclusion 149
A Dynamic Model of DeltaBot 152
xi
List of Tables
3.1 The major dimensions of a typical DeltaBot . . . . . . . . . . . . . . . . . . . . 38
4.1 Specifications of the optimum design for BetaBot . . . . . . . . . . . . . . . . . 75
4.2 Specifications of DeltaBot design . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
xii
List of Figures
2-1 Cable actuated robot of Landsberger [1]: a) the 3 dof version which locates a
point in the space b) the 6 dof manipulator. . . . . . . . . . . . . . . . . . . . . . 7
2-2 a) TetraBot of Marconi: a parallel manipulator with 3 dof b) Hexapod. . . . . . 8
2-3 a) Falcon-7: a 6 dof cable-based manipulator [2] b) 8-wire robots proposed by
Tadokoro [3]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2-4 NIST robotcrane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2-5 Serial link manipulators actuated by cables. a),b) A simple serial link manipula-
tor actuated by four cables c) Utah/MIT dextrous hand d) Purashev’s manipulator. 12
2-6 A general model of a cable based manipulator restrained only with wires. . . . . 14
3-1 General configuration of the cable-based manipulator studied in this work. . . . . 21
3-2 BetaBot: A 3 DoF cable-based manipulator with pure translational motion. . . . 27
3-3 BetaBot with a particular geometry that guarantees the tensionability. . . . . . . 29
3-4 The three planes formed by parallel cables and the spine meet at a point called R. 30
3-5 a) The cables in BetaBot form a polyhedral which is convex due to Condition 2
b) The forces applied to the end-effector form a cone. . . . . . . . . . . . . . . . 33
3-6 DeltaBot: A cable-based manipulator with three pure translational motion. . . . 37
3-7 The workspace of DeltaBot: The points that belong to the workspace are shown
by black squares from which the untensionable points are marked by hallow dots. 39
3-8 a) A 3 DoF cable-based manipulator with two independent sets of cables. b) The
configuration of the drive cables c) The configuration of the passive cables. . . . 42
3-9 Assuming the lengths of the two cables ab and cd are equal, the end-effector
always remains parallel to the base. . . . . . . . . . . . . . . . . . . . . . . . . . . 43
xiii
3-10 Free body diagram of DishBot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3-11 Plannar version of BetaBot (a) and DeltaBot (b). Both manipulators provide a
XY motion for the end-effector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3-12 a) The configuration of the cables and spine in plannar DeltaBot and BetaBot
b) The free body diagram of the end-effector. . . . . . . . . . . . . . . . . . . . . 47
4-1 a) The general configuration of the cable-based robot with pure translational
motion, b) The force balance of the end-effector. . . . . . . . . . . . . . . . . . . 54
4-2 Force capacity of the cable-based robot. . . . . . . . . . . . . . . . . . . . . . . . 54
4-3 The force capacity cone and sphere SPf which represents the desired maximum
robot’s payload. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4-4 The torque capacity parallelepipd of the end-effector. . . . . . . . . . . . . . . . . 60
4-5 The torque capacity and the required torque sphere SPm. . . . . . . . . . . . . . 61
4-6 Torque requirements are presented as a set of planes in the force space. . . . . . 64
4-7 a) The torque capacity prism which is made by the extension of the parallelepipid
along Mz axis b) The torque requirement circle. . . . . . . . . . . . . . . . . . . 67
4-8 a) Range of the links’ lengths for DeltaBot, b) Projection of figure (a) on the
plane of circle C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4-9 The optimum spine force that satisfy the force/torque requirement of BetaBot
shown in different locations in the workspace. . . . . . . . . . . . . . . . . . . . . 76
4-10 The maximum cable force in BetaBot shown for different locations in the workspace. 77
4-11 The maximum error gain in BetaBot. . . . . . . . . . . . . . . . . . . . . . . . . . 78
4-12 The optimum spine force that satisfy the force/torque requirement of DeltaBot
shown in different locations in the workspace. . . . . . . . . . . . . . . . . . . . . 80
4-13 The maximum cable force in DeltaBot shown for different locations in the workspace. 81
4-14 The required motor torque in DeltaBot shown over the workspace. . . . . . . . . 82
4-15 The maximum error gain in DeltaBot. . . . . . . . . . . . . . . . . . . . . . . . . 83
4-16 A prototype of DeltaBot developed at the University of Waterloo. . . . . . . . . 84
5-1 The block diagram of the motion programming of a robotic manipulator. . . . . 88
xiv
5-2 A sample B-spline: a) A uniform clamped B-spline b) The same B-spline but the
third control point has a multiplicity of 2. . . . . . . . . . . . . . . . . . . . . . . 93
5-3 Typical shape of a pick-and-place path generated by 10 control points and a
cubic B-spline. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
5-4 The effect of the knot vector on the path The B-spline curves found by uniformly
distributed knot values and chord-length knot values. The mean of absolute error
between the knot values and the arc-length values are also shown. . . . . . . . . 97
5-5 A schematic diagram of the phase plane and the admissible region. . . . . . . . . 107
5-6 Finding the time-optimal trajectory in phase plane. a) Single switching point,
b) Several switching points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5-7 The standard pick-and-place path shown inside the workspace of DeltaBot. . . . 113
5-8 The time optimal trajectory of a standard pick-and-place path on DeltaBot. . . . 114
5-9 The cable tensions in DeltaBot during the time-optimal trajectory. . . . . . . . . 115
5-10 The schematic diagram of the trajectory tracking system used for DeltaBot. . . . 116
5-11 Testing of the time-optimal trajectory on DeltaBot a) The commanded and ac-
tual path of the end-effector b) The following error of the end-effector. . . . . . . 117
5-12 The general pattern of the acceleration of the end-effector along the path. . . . . 119
5-13 Performance of DeltaBot on the real-time trajectory a) The commanded and
actual path of the end-effector b) The following error of the end-effector. . . . . . 122
6-1 General model of a cable-based fully parallel manipulator. . . . . . . . . . . . . . 126
6-2 A single cable with some internal force. . . . . . . . . . . . . . . . . . . . . . . . 129
6-3 An equivalent stiffness model for a single cable with pretension: a) A single cable
b) An equivalent four-spring. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
6-4 The equivalent stiffness model of the manipulator shown in Fig. 6-1. (a) The
cables stiffness and (b) The stiffness caused by the force distribution on the
end-effector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6-5 Falcon7 and its tensionable workspace for the given orientation of the end-effector.142
6-6 The stabilizability of a plannar cable-based manipulator in four different orien-
tations of the end-effector: a) 0, b) 10, c) 20, d) 30. . . . . . . . . . . . . . . . 144
xv
6-7 The effecot of change of the cable configuration on the stabilizablity. Orientaions
of the end-effector are a) 0, b) 10, c) 20, d) 30. . . . . . . . . . . . . . . . . . 145
6-8 A plannar cable-based manipulator which is unstabilizable everywhere and beom-
ces unstable for relatively small antagonisc forces. . . . . . . . . . . . . . . . . . . 146
A-1 One of the three limbs of DeltaBot . . . . . . . . . . . . . . . . . . . . . . . . . . 153
xvi
NOMENCLATURE
Accmax Maximum acceleration along the path
C Control point of a B-spline
ζi Knot values
Decmax Maximum deceleration along the path
EG Error gain
η Minimum allowed pretension of cables
F Force capacity
Fe External force applied to the end-effector1
Fmax Maximum force to be applied by the end-effector
fs Magnitude of the spine force
Fwght Weight of the payload
I Inertia matrix of the manipulator
Iide Identity matrix
Jerkmax Maximum rate of the acceleration along the path
J Jacobian matrix
k Number of the joint variables
κ Stiffness coefficient of a cable
K Total stiffness matrix
Ka Stiffness matrix due to antagonistic forces
Ks Stiffness matrix of no-load situation
Kf Stiffness matrix due to internal forces
l Length of the cable
L Lagrangian
λ Vector of Lagrange’s multipliers
m Number of cables
M Torque capacity
1Vectors and matrices are shown by bold characters in this thesis
xvii
Mi Moment of ith cable w.r.t. O0X 0Y 0Z 0
Mmax Maximum moment to be applied by the end-effector
Me External moment applied to the end-effector
n Number of degrees of freedom
N(ζ) Basis functions of a B-spline
n Uni-normal vector of a plane
OXY Z Global coordinate frame
O0X 0Y 0Z 0 Moving frame attached to the center of the end-effector
P Anchor point of cables on the end-effector
q Vector of generalized coordinate
r Position vector of P in O0X 0Y 0Z 0
s Arc-length variable on the end-effector’s path
Sij Plane formed by cables i and j
SPf Sphere of force vectors to be applied by the end-effector
SPm Sphere of moment vectors to be applied by the end-effector
σ Summation of the tensions of two parallel cables
T Vector of generalized forces
Tacc Accelerating period
Tdec Decelerating period
Tmax The maximum required torque from the actuators
τ Cable tension (positive if tensile)
θ Vector of joint variables
θa Vector of active joint variables (driven by actuators)
u Number of control points
u Unit vector representing the direction of a cable
v Order of B-spline polynomial pieces
v Unit vector normal to a cable
w A unit vector representing the direction of the spine
x Vector of end-effector coordinate variables
ξ Vector of kinematic constraint equations
xviii
Chapter 1
Introduction
Robotics manipulators, like many other technologies, have their roots in living mechanisms. The
idea of human arm must have been among the very first motivations for researchers to develop
serial structure manipulators to enhance the ability of a human for more efficient manipulation
of objects. These manipulators, with relatively small foot-prints, have the ability to sweep a
large workspace. However, due to their cantilever structure and moving actuators which results
in low stiffness and high inertia, they do not possess a good load capacity and operational speed.
Also, actuator errors, in these manipulators, are accumulated and thus, the positioning accuracy
is relatively poor. Nature has already solved these problems with another configuration in living
members such as a neck and eye which are controlled with several muscles working in parallel.
Humans use three fingers in parallel for fast and high precision motions such as writing. A
parallel manipulator is an alternative solution for applications which require high load capacity
and precise positioning. In these manipulators, since actuators work in parallel, the load is
shared and the error is not accumulated. Furthermore, the rigidity of such manipulators is
significantly better than that of serial robots. These manipulators, however, are more complex
to analyze and design, and have a relatively larger foot-print to workspace ratio.
The rising need for faster, simpler and cheaper robot manipulators has never stopped from
the growing automation industry. Using tendon elements in the actuation of manipulators
is probably concluded from the way muscles move bones in a body and has been introduced
to the field of robotics since the 1970’s. These manipulators benefit from low moving inertia
which is the key in obtaining high accelerations and fast motions. New designs were introduced
1
in the 80’s and 90’s which have fully parallel structures and have been studied for high speed
applications and manipulations in large workspace. The moving inertia of a parallel cable-based
robot is minimal since the moving parts are the end-effector and the cables whose masses are
negligible. These manipulators also benefit from simpler design and lower fabrication cost by
replacing several parts and joints by cables. Although tendon or cable robots have a great
potential for many robotics applications, their commercial presence in the industry is very
limited. This is due to several challenges in their design and analysis which mainly arises from
the fact that cables are unilateral force elements i.e. they can only pull but not push.
One of the major problems with the current cable-based robots is that they hardly fit real
industrial needs. The existing design of these manipulators provide full motion (6 DoF1 in
spatial manipulators and 3 DoF in planar ones) which is not necessary in most applications and
usually need extra actuators to provide tension in the cables. As a result, a major goal in this
research is to seek new designs of cable-based manipulators with minimum level of complexity
for real industrial applications. For this purpose, several new designs of reduced DoF cable-
based robots with fully parallel structures are introduced. In all of these designs, cables are
used both to move the end-effector and constrain its rotational motion in order to obtain pure
translation in 3D or 2D space. These manipulators can be enhanced by adding one rotational
motion to the end-effector by a separate chain which makes them ideal for many high-speed
applications such as pick-and-place operations. Although high-speed robotics is considered as
the main application for these manipulators, most of the analysis and results reported in this
thesis are applicable to all cable-based manipulators.
In this thesis, the fundamental challenges involved in the design, analysis and operation
of cable-based manipulators are addressed. The main topics studied in this work are rigidity,
stability, design, and motion planning of cable-based manipulators. Many other elements of
their analysis such as kinematics, dynamics, singularities, etc. are directly inherited from
similar rigid link manipulators as long as all the cables are in tension i.e. the manipulator is
rigid. Therefore, the rigidity of cable-based manipulators is the most essential property which
has to be studied thoroughly on any particular manipulator.
In this thesis, a systematic approach is introduced for the rigidity study and it is tried to
1DoF: Degrees of Freedom
2
evaluate the rigidity of manipulators independent from their pose. It should be noted that
the rigidity of a cable-based manipulator only deals with its static equilibrium and it does not
provide any information on the stability of that equilibrium point. To the best of the author’s
knowledge, this type of stability analysis has never been reported for cable-based manipulators.
A major contribution of this work is to introduce an approach to study the effects of the
cable tensions on the stability of a cable-based manipulator. This indicates whether internal
cable forces, required for the rigidity of a manipulator, may ever result in the instability of the
manipulator.
Design and path planning of cable-based manipulators are other issues studied in this thesis.
In the design, the problem is how to find the optimum pretension for the cables to guarantee
the rigidity of the manipulator while a certain amount of force and torque is applied to the end-
effector. In the path planning problem, the time-optimal design of the path and the trajectory
of these manipulators are studied considering that cable tensions should be maintained for the
rigidity of the manipulator.
This thesis is presented in 6 chapters. After this introduction, Chapter 2 reviews the back-
ground and the related literature. Chapter 3 presents the concept of the new reduced DoF
cable-based manipulators and their rigidity analysis. In Chapter 4, a design procedure for
these manipulators is introduced and is implemented on DeltaBot, a new cable-based manipu-
lator with three translational motions. A prototype of DeltaBot is fabricated which is reviewed
at the end of this chapter. Chapter 5 presents the path planning of these manipulators and in-
troduces a time optimal trajectory planning technique specific to cable-based manipulators. In
Chapter 6, the stability problem of cable-based manipulators is studied and Chapter 7 concludes
the thesis.
3
Chapter 2
Literature Review and Background
Jean-Pierre Merlet defines a parallel manipulator [4] as “a closed-loop kinematic chain mecha-
nism whose end-effector is linked to the base by several independent kinematic chains”. Based
on the concept of parallel manipulators, Merlet states that “a parallel robot is made up of
an end-effector with n degrees of freedom and a fixed base linked together by at least two
independent kinematic chains. Actuation takes place through n simple actuators”.
The attention and research in parallel manipulators were mainly triggered by Stewart in
1965 [5] when he published his six DoF 1 robot to simulate aircraft motion. The robot is now
known as the Gough-Stewart mechanism because it had been initially proposed by Gough and
Whitehall [6] in their tyre testing machine. The Stewart-Gough manipulator, or in general,
the idea of parallel manipulators was brought into the field of robotics by Hunt [7, 8]. He
showed the advantages of this mechanism in terms of stiffness and precision over conventional
serial robots. The existence of several kinematic chains within parallel mechanisms introduces
different difficulties in their analysis such as [9]:
• Complicated forward kinematics which requires the solution of a system of non-linear
equations
• Singular points in the workspace
• Limited and complex workspace in comparison with those of serial manipulators
1DoF: Degree of Freedom
4
• Higher computational effort required for the control algorithm.
There are approximately one hundred parallel robot designs in the literature [4] with dif-
ferent degrees of freedom and varieties of applications. It seems that the main issues among
all designs are kinematics, singularities, and workspace analysis. The work by Gosselin and
Angeles [10] is a fundamental analytical study on this subject. The works by Hunt [8], Fichter
[11] and Merlet [12] are other attempts to characterize the singularity conditions of parallel
robots. The workspace of parallel robots in some simple cases such as three DoF robots can
be found geometrically by taking the intersection of several 3D shapes [13]. The workspace
of higher degrees of freedom mechanisms are harder to find and represent, especially if joint
limitations and interference of links are to be taken into account.
2.1 Cable-based Parallel Manipulators
Using cables in parallel mechanisms has been recently considered. The main advantages in
using cables in parallel manipulators can be listed as [14]:
• Larger range of motion in comparison with linear actuators,
• Smaller footprint,
• Lower inertia,
• Greater range of motion in comparison with spherical joints,
• Lower manufacturing costs.
Cable-based parallel manipulator designs reported in the literature are much fewer than the
rigid link parallel manipulators. They are usually called cable actuated or wire driven robots
because in all of them, cables are the means for actuation. In this work however, it will be
shown that cables can be also used to provide kinematic constraints without participating in
the actuation of the mechanism. As a result, we use the term cable-based robots in this work to
generalize the application of cables as constraints and actuation. Famous designs of cable-based
manipulators are reviewed in the following and the main challenges are explained.
5
Current cable-based robot designs can be classified based upon their main advantages and
corresponding applications:
1. Low inertia robots (Landsberger’s [1] and Falcon-7 [2])
2. Large workspace (NIST Robocrane [15], WiRo [16], the manipulators by Tadokoro et al
[29] and the manipulator developed by Y.X. Su et al [17])
3. Actuation of serial structured manipulators by wires (Wendlandt [18], Wells [19], Ander-
son [20])
4. Measurements and force control (Jeong et al [21], Kawamura et al [22] and [23])
Any cable-based parallel manipulator has an equivalent rigid link counterpart in which
each cable is replaced by a rigid link or a linear actuator with ball-and-socket joints at the
two ends. As a result, the kinematics and dynamics of a cable-based manipulator is studied
in the same manner as its rigid link counterpart as long as all the cables are in tension and
hence, behave as rigid links. In other words, the main difference is that cables can only apply
pulling forces and therefore, for a cable-based manipulator, it should be confirmed that positive
tension in all cables can be maintained. As a result, there might be situations in which the
manipulator collapses because of slack cables; these are considered as singular points in the
robot’s workspace.
In order to produce tension in cables, redundant actuation is usually used. For example,
to have a cable-based manipulator with n DoF, there should be at least n + 1 actuators [24].
Although redundant actuation can introduce more difficulties in design and control of these
robots, it can greatly reduce singularities and increase stiffness of the robot.
2.1.1 Low Inertia Manipulators
Landsberger’s manipulator as shown in Fig 2-1a and b, and Falcon-7 shown in Fig. 6-5, are
two examples of cable-based manipulators that benefit from low inertia. Fig. 2-1a shows a 3
DoF manipulator which can locate a point in the space. The moving parts of this robot are the
end-effector and the central post. The central post which is called spine is a telescopic element
with a compressive spring inside. The spring produces a force applied to the end-effector and
6
(a) (b)
Figure 2-1: Cable actuated robot of Landsberger [1]: a) the 3 dof version which locates a pointin the space b) the 6 dof manipulator.
base. This force maintains tension in all the cables. Cables are pulled and collected by three
winches located on the base. The 6 DoF version of Landsberger robot, shown in Fig.2-1b, is an
implementation of Stewart-Gough platform by cables. The same spine is utilized to maintain
tension in the cables.
The rigid link counter parts of Landsberger’s manipulators are shown in Fig. 2-2. In Fig. 2-
2a, a parallel manipulator is shown which can locate a point in space. The idea was introduced
by Mianowski [25] and later completed by Neumann [26]. It consists of three linear actuators
connected to the base by three universal joints and converge at a triple ball-and-socket joint.
The Marconi company made a commercial type of this robot called Tetrabot which has a wrist
on the end-effector to provide 3 DoF orientation control. Fig. 2-2b shows Hexapod, a particular
design of the Stewart-Gough platform which was first realized by McCallion [27] however; the
one shown in the figure is Shelef’s prototype [28]. The main idea is to make an octahedral which
results in simplification of direct kinematics of the mechanism. The robot is actuated with six
linear actuators and is widely used for motion simulators and high precision machining.
7
(a) (b)
Figure 2-2: a) TetraBot of Marconi: a parallel manipulator with 3 dof b) Hexapod.
Falcon-7, shown in Fig. 2-3a, was introduced by Kawamura [2] for high speed motions and
it is claimed to reach a maximum acceleration of 43g (1g=9.81m/s2) for its end-effector with
a payload of 0.15kg. This robot uses seven actuators to pull and collect cables and provides
six DoF for the end-effector. The actuation redundancy is used to produce tension in cables.
Similar designs are also studied by Tadakoro et al [29] who have used 8 wires for a six DoF
manipulator. They have proposed an approach to study all the possible configurations of the
cables and found the optimum design from the viewpoint of the workspace. A schematic of
their design is shown in Fig. 2-3b.
2.1.2 Large Workspace
Using cables along with a motorized winch provides an actuator with a very large range of
motion. This has initiated several cable-based manipulators for positioning purposes in a large
workspace. Cable cranes are typical examples of this type of manipulators in which cables are
used to change the position and/or orientation of a platform. Robocrane is one of the most
successful cable cranes invented in the National Institute of Standard and Technology by Albus
[15] and his team. The robot is shown in Fig. 2-4 and is an implementation of McCallion-Shelef
8
(a) (b)
End-effector
cable
winch
Figure 2-3: a) Falcon-7: a 6 dof cable-based manipulator [2] b) 8-wire robots proposed byTadokoro [3].
9
Base
Cables
end-effector
Figure 2-4: NIST robotcrane.
design [28] (shown in Fig. 2-2b) by wires. This robot has been mainly used for lifting and
positioning of large objects in a large workspace such as ship components handling in shipyards
[30]. Landsberger [31] also proposed the same idea almost at the same time and performed an
analysis on the workspace of this crane. While Robocrane and similar designs provide 6 DoF
for the moving platform, there are several designs which use cable-suspended platforms with
lower DoF but combined with a rigid link manipulator mounted on the platform to enhance the
motion. In these designs, the cable-based manipulator provides the large scale movements of
the platform and the rigid link mechanisms mounted on the platform is used for fine positioning.
The Manipulator developed by Su et al [17] is an example which is used for the feed-supporting
system of a radio telescope with a radius of 250m. The moving platform carries a Gough-
Stewart manipulator for the fine tuning of the collector. The tracking error is claimed to be
less than 4mm. A similar design for machining purposes was proposed by Bostelman et al [32].
They mounted different machine tools on the platform of a Robocrane to obtain a large scale
machining environment. The manipulators developed by Osumi et al [33] and Kossowski and
Notash [34] are other examples of using cable-based structures for their large range of motion
along with rigid link manipulators.
10
2.1.3 Cable-actuated Serial Link Manipulators
The flexibility of the cables have been utilized by many researchers to design parallel actuation
systems for serial structure manipulators. In this type of manipulators, actuators are located
on the base and their forces are transmitted to the links by cables. A typical example is shown
in Fig. 2-5a. and b. The actuation of a 2 DoF arm is done either by four (Fig. 2-5a) or two
(Fig.2-5b) parallel actuators. The latter configuration is called closed-loop tendon driven [35]
and is the same as a belt-and-pulley mechanism. The pretensioning of the closed-loop cable is
necessary for providing rigidity to the manipulator.
Based on this idea, several manipulators have been developed. A three-fingered hand known
as Stanford/JPL [36, 37] was developed at Stanford University. Each finger is a two-link-arm
with 2 DoF and is controlled by 4 cables. The kinematic design and force control of this
manipulator is studied in [38]. Utah/MIT dextrous hand [39, 40] has a similar design but four
fingers are implemented, each of which is controlled by eight cables. A schematic drawing of this
hand is shown in Fig. 2-5c. The same concept has been applied to several other applications
such as remote operations in space [19, 20], endoscopic tools [18] and humanoid robotics [41].
In Fig. 2-5d, the robot of Parushev [42] is shown. This manipulator has a serial link
structure with 4 DoF. Six cables are arranged in two groups of parallel actuators. In the first
group, the actuators are mounted on the stationary base and provide the large scale motion of
the manipulator. The second set of cables are pulled and collected by three winches and motors
mounted on the moving arm. This set of actuators are used for fine motion of the end-effector
2.1.4 Measurements and Force Control by Cable-based Manipulators
Pose and force measurement is another application of cable-based parallel manipulators which
takes advantages of low weight and flexibility of cables. The structure of cable-based pose/force
measurement tools are the same as cable-based manipulators. However, the end-effector is sub-
jected to an external movement or loading which will be calculated by measuring the displace-
ment or the tension of the cables and using the kinematics of the manipulator.
A 3D measurement system is proposed in [21, 43, 44] wherein six cables are connected to
the object and collected by ground-mounted winches. Each winch has a measurement tool
that measures the displacement of the cable. As a result, using the forward kinematics of the
11
2θ
1θ
+2θ
−2θ+
1θ
−1θ
(a) (b)
(c)
2θ
1θ
+2θ
−2θ
+1θ
−1θ
(d)
First set ofwinches andmotors are
mounted here
Second setof winchesand motors
Figure 2-5: Serial link manipulators actuated by cables. a),b) A simple serial link manipulatoractuated by four cables c) Utah/MIT dextrous hand d) Purashev’s manipulator.
12
manipulator, the position and the orientation of the object is calculated. The idea of using
cables to obtain information about the position of the end-effector is also used in WiRo6.3 [16].
This cable-based manipulator has 9 cables and is used for positioning; however, the displacement
of the redundant cables are used to find a closed-form solution for the forward kinematics.
Haptic devices are another application for cable-based manipulators. Haptic devices are
interface tools that can reproduce the reaction forces on the hands of a user. Just as audio/visual
systems enable users to see and hear, haptic devices help to feel the reaction forces of the object
while it is being manipulated by the user. The basics of a haptic device is pose measurement
and force control. The current pose of the user’s hand is read by the system and the necessary
forces are produced and transferred by the cables to the hand. Kawamura et al [23] developed a
master robot for teleoperation of a slave robot. Their master robot is a cable-based manipulator
with six cables. The user moves the end-effector of the master robot by hand to control the
motion of the slave robot. The loading on the slave robot is simulated and represented on the
master robot by implementing a force control algorithm. They also proposed a virtual tennis
machine [22] for trainers in which the tennis racket is restrained by 7 cables. A force control
scheme is used to simulate the reaction forces on the racket when the player hits the ball.
2.2 Cable Tensions Condition
The most essential issue with cable-based manipulators is the tension that should be always
maintained in the cables. A slack cable in a manipulator means the kinematic constraints do
not hold anymore and hence, the manipulator may collapse. As mentioned earlier, as long as
all cables are in tension, the cable-based manipulator is identical to its rigidlink counterpart
where all cables are replaced by rigid links with ball-and-socket joints at the ends. Therefore, it
is essential to determine the conditions under which positive tension in cables can be preserved.
The first general approach to study the cable-based manipulators was given by Ming and
Higuchi [45]. They classified cable-based manipulators into two categories as:
1. Completely Restrained Positioning Mechanism (CRPM): The end-effector is fully con-
strained by the kinematics of the manipulator. This results in the fact that the tension
in cables are antagonistic forces and hence, there is no need for any external forces to
13
Cable 1
1u
End-effector
Cable m
eM
eF
1rir mr
XY
Z
O'
O
iumu
Figure 2-6: A general model of a cable based manipulator restrained only with wires.
maintain the cable tensions.
2. Incompletely Restrained Positioning Mechanism (IRPM): Cable tensions are provided by
dynamic forces, gravity or any other external force. In these manipulators, the workspace
is augmented in order to include forces and torques as well as positions and orientations.
The general model of a cable-based manipulator studied by Ming and Higuchi is shown in
Fig. 2-6. The end-effector is restrained by m cables. The directions and lengths of the cables
are shown by unit vectors ui’s and scalars li’s, respectively (i = 1, 2, ..,m). Cable tensions are
τ1, τ2, ..., τm which produce forces such as τ iui. It is assumed that a positive τ i represent
tensile force in cables.The static balance of forces and torques for the system shown in Fig. 2-6
can be written [45] as2:
Aτ +We = 0 (2.1)
2Vectors and matrices are shown by bold letters
14
where
A6×m =
⎡⎣ u1 u2 · · · um
r1 × u1 r2 × u2 · · · rm × um
⎤⎦ (2.2)
τm×1 = [τ1 τ2...τm]T
We =
⎡⎣ Fe
Me
⎤⎦6×1
and Fe,Me are the external force and torque applied to the end-effector. For a CRPM, matrix
A should be designed such that for any arbitrary We, Eq. (2.1) has a solution for τ with all
positive components τ i’s. In this equation, A is a 6×m matrix. The number of rows in A shows
the dimension of the motion space and is assumed to be six in this work. If, for example, the
end-effector is already constrained to move in a plane, then A will have only three independent
rows.
In general, the number of cables is larger than the dimension of the motion space and hence,
A is not a square matrix. As a result, cable tensions can be found as:
τ = −A+We + [I−A+A]U (2.3)
where A+ = AT (AAT )−1 is the Moore-Penrose inverse or pseudo inverse of A and Um×1 is a
vector of arbitrary real numbers. The first term in Eq. (2.3) gives the minimum-norm solution
for the cable tensions to balance the external force and torque; however, the tensions may be
negative. The second term, [I−A+A]U, belongs to the null space of A because:
A[I−A+A]U =£A−AA+A
¤U
= [A−A]U = 0
and thus, represents the antagonistic cable tensions and results from the redundancy in the
manipulator. If all these antagonistic tensions are positive, they increase the tension in the
cables and hence, can be used to leverage all the cable tensions to positive values. Thus,
the most important question about matrix A is that what properties it should have so that
15
[I−A+A]U can raise all cable tensions.
Since [I−A+A]U in Eq. (2.3) belongs to the null space of A, this equation can be written
as:
τ = −A+We + α1h1 + α2h2 + · · ·αm−nhm−n (2.4)
where h1, h2, · · · , hm−n are unit vectors that form a basis for the null space of A and α1, α2,
..., αm−n are arbitrary real values and should be selected such that the overall tension in all
cables be positive. Note that n, in general, is the number of the rows of A which is 6 for spatial
manipulators and 3 for planar ones. It is seen from Eq. (2.4) that the higher the number of
cables, the more flexibility exists for choosing the cable tensions such that the external load is
balanced and all cables are in tension. For the special case m = n + 1 in which there is one
more cable than the number of degrees of freedom, Eq. (2.4) becomes:
τ = −A+We + α1h1 (2.5)
where h1 is a unit vector representing the one-dimensional null space of A and α1 ∈ R. The
positive tension in cables can be maintained if the entries of h1 are either all positive or all
negative. Note that this is a sufficient condition for the rigidity of the cable-based manipulator.
A similar approach called force closure or vector closure [46] is used in analysis of gripping
mechanisms in which the gripping force is unidirectional however, opposite to the cable forces
that are pulling, the gripping forces are only pushing. Kawamura et al [47] have used this
idea in order to find the conditions which guarantee the tension in cables. The vector closure
theorem states that in an n-dimensional space, a set of vectors V is said to be a vector closure
if and only if:
1. V has k+1 vectors (v1 v2 ... vk+1) from which any subset of k are linearly independent,
2. There exist k + 1 real numbers with the same sign, β1,β2, ...,βk+1, such that:
k+1Xi=1
viβi = 0 (2.6)
Having a vector closure, any vector in the same k-dimensional space can be expressed as
16
a linear combination of vector closure members with all positive coefficients. By comparing
equations (2.1) and (2.6), it can be concluded that if columns of matrix A form a vector closure
then positive tensions can be found in order to satisfy force/torque equilibrium. It should
be noted that in this approach, vector closure is a sufficient condition for the manipulator to
remain rigid at a given pose. The workspace of Falcon-7 was determined by performing this
analysis on all possible poses of the manipulator.
Unlike the model of Ming and Higuchi, Barrete and Gosselin [14] used springs as well as
wires in their cable-based manipulator model although, their manipulator can be categorized
as an IRPM in which springs are the means to provide tension in the cables. They studied the
workspace of a planar robot of this kind to determine the region in which a certain force and
torque can be applied.
Although the cable tension is the most essential issue in the design and operation of cable-
based manipulators, other considerations are also involved which have been addressed by some
researchers. The interference of wires, specially for highly redundant manipulators, was studied
by Tadakoro et al [29]. They developed an optimal design for the workspace of a redundant
eight wire robot. Won Choe et al [48] introduced a design of cable-based manipulators in which
higher stiffness of the manipulator was considered as the main goal.
2.3 Conclusion
Cable-based manipulators are mostly designed and used in applications in which moving inertia
and/or the size of workspace is of highest importance. The application of cables reduces the
number of joints in the manipulator and hence, reduces the manufacturing costs. The main
drawback is that since the cables can only pull, the analysis of these manipulators becomes
more complex. In other words, the cable tensions which are considered as internal forces should
be taken into account when the statics and dynamics are studied.
It can be concluded from the literature that the main approach in studying cable-based
manipulators is building an analogy with their rigid link counterparts. In this analogy, all
cables are required to be under tension. In order to meet this requirement, Eq. (2.3) should
have positive solutions or the vector closure condition (2.6) should be satisfied. The evaluation
17
of these conditions is difficult because they are pose dependent. Due to the complex workspace
of parallel manipulators, a numerical simulation is usually used to generate all possible poses
and evaluate the cable tension conditions on each pose individually.
18
Chapter 3
Reduced DoF Cable-Based
Manipulators
In this chapter, several possible designs for reduced DoF cable-based manipulators are proposed.
As it was mentioned before, all current cable-based manipulators use cables to drive the end-
effector. Therefore, each cable is pulled by an independent actuator to provide an independent
motion for the end-effector. In this work, cables are utilized not only to drive the end-effector
but also to enforce geometric constraints. As a result, cable-based mechanisms with selected
DoF such as pure translation or pure rotation can be built.
In this work, an IRPM configuration is used for the new designs, although they can be imple-
mented both as CRPM1 or IRPM2. The source for generating tension in cables is a collapsible
element called spine which maintains a compressive force on the end-effector.
In the beginning of this chapter, a general model of cable-based manipulators used in this
work will be given and the corresponding terminology and basic concepts will be introduced.
In the next section, a theorem is introduced and proved which will be used later on for the
tensionability study of these manipulators. Finally, the architecture of several possible designs
of reduced DoF cable-based manipulators are explained and their basic properties are discussed.
1CRPM: Completely Restrained Parallel Manipulator2 IRPM: Incompletely Restrained Parallel Manipulator
19
3.1 General Structure and Definitions
The configuration of a cable-based manipulator is shown in Fig. 3-1. The four main elements
of this manipulator are:
1. Base: the fixed part of the manipulator which contains the global system of coordinate
OXY Z
2. End-effector: the moving body
3. Cables: the flexible tendon elements with negligible mass connected from one end to
the end-effector at point Pi (i = 1, 2, ...,m) and pulled from the other end at Qi. The
pulling actuator produces tension τ i inside the cable and can be simply a winch which
pulls and collects the cable or it can be a separate mechanism that moves the cable’s end
(Qi) without changing the length. Unit vectors ui (i = 1, 2, ...,m) determine the direction
of the cables and point towards the base. Depending on the structure of the manipulator,
there may be some extra pulleys to guide the cables. The number of cables, m, is equal
to the dimension of the motion space of the end-effector. Therefore, if the end-effector
is constrained to move on a plane then there will be three cables (m = 3). For spatial
mechanisms, the number of cables will be six. It is also assumed that the diameters of
the cables are sufficiently small such that the bending of the cable ends does not affect
the kinematics of the manipulator.
4. Spine: the element that produces a force between the base and the end-effector in order
to keep all the cables in tension. The spine can be an active element which generates a
desired force. It can be also a passive element such as a cylinder energized by compressed
air or a compressive spring designed properly to provide the sufficient force required to
maintain tension in the cables. The magnitude of the force produced by the spine, fs, is
constant and is determined during the design process. The direction of the spine is shown
by unit vector w pointing towards the end-effector.
For any cable-based manipulator an equivalent rigid link counterpart can be found by re-
placing each cable by a rigid link and ball-and-socket joints at the ends. If a cable is connected
20
Fs
X Y
Z
O
P1
P2Pi
Pm
Q1
Q2
Qi
Qm
Cable 1
Cable 2
Cable i. . .
. . . . .
rm
Base
End-effector
Spine
r1Cable m
1u
iu
mu
2u
wO'X' Y'
Z'
Figure 3-1: General configuration of the cable-based manipulator studied in this work.
21
to a winch so that its length is variable, then a cylindrical element should be used to represent
this cable in the rigid link manipulator. This analogy is considered for several purposes such
as kinematics analysis and is valid as long as the cable-based manipulator is rigid according to
the following definitions:
Rigidity: A cable-based manipulator is rigid at a certain pose with respect to a given
external load (including dynamic loads) and spine force if and only if all cables are in tension,
τ i ≥ 0 i = 1, 2, ...,m. A positive τ i is considered as a tensile force in the cable.
It should be noted that the rigidity of a cable-based manipulator depends on the external
load and therefore, dynamic forces should be also considered when the rigidity is evaluated.
As a result, rigidity is not a property of the kinematics only. The rigidity analysis requires
the motion, inertia and all other externally applied forces to be considered which complicates
the process. To overcome this problem, another property called tensionability is defined in the
following which only depends on the kinematics and expresses the potential of the manipulator
for being rigid in any circumstances:
Tensionability: A cable-based manipulator is called tensionable at a given pose if and
only if for any arbitrary external load there exists a finite spine force to make the manipulator
rigid.
Note that if a manipulator is tensionable and there is enough spine force available, then
the manipulator will be rigid under any external load. In other words, tensionability and a
large enough available spine force together provide a sufficient condition for the rigidity. The
converse is that a manipulator may be rigid under a certain condition but not tensionable.
Note that both rigidity and tensionability deal with the existence of an equilibrium condition
for the manipulator in which all the cables are in tension and hence, the manipulator does not
collapse. However, they do not explain the nature of the equilibrium. For instance, considering
the stiffness of the manipulator, the manipulator may be rigid (meaning that it is in equilibrium
with all cables in tension) although the equilibrium might be an unstable one which implies
that any small disturbance on the end-effector results in the collapse of the manipulator. It is
known that the stability of the manipulator from the stiffness point of view is not specific to
cable-based manipulators however, it will be shown later in Chapter 6 that the cable tensions
may have a significant effects on the stiffness. It will be shown by some examples that increasing
22
the tension in cables may result in the instability of these manipulators.
The other term specific to cable-based manipulators in this work is defined as:
Force/torque capacity: For a cable-based manipulator with all actuators locked at a given
pose and given constant spine force, the force/torque capacity is the set of all forces/torques
that the manipulator can apply to the its payload without losing the rigidity.
Force/torque capacity emerges from the fact that the spine force is constant and hence,
a finite set of forces and/or torques can be applied by the manipulator before the rigidity is
lost. It should be also noted that, tensionability guaranties that the force/torque capacity of a
manipulator can be extended as much as desired by increasing the spine force.
3.2 Tensionability
The goal of this section is to introduce an approach for the evaluation of tensionability of
a cable-based manipulator. According to the definition, the tensionability of a manipulator
must be evaluated for any arbitrary external load and hence, is difficult. In the following, a
theorem is introduced which gives a sufficient and necessary condition for the manipulator to
be tensionable regardless of its external load. Before the theorem, a simple lemma is introduced
and proved.
Lemma 1 In a cable-based manipulator and in the absence of external loads, for an arbitrary
non-zero spine force Fs, if the solution of static equilibrium equations:
Xi
τ iui +Fs = 0 (3.1)Xi
τ iri × ui = 0 (3.2)
exists then τ i’s increase/decrease monotonically upon increasing/decreasing of spine force and
never change sign as long as the sign of the spine force is the same.
In the above equations, ri =−−→O0Pi is the position vector of the anchor point of the ith cable
with respect to the center of the end-effector (see Fig. 3-1).
23
Proof. Eqs. (3.1) and (3.2) can be written similar to Eq. (2.1) with Me = 0 and Fe =
Fs = fsw as:
Aτ = −fs
⎡⎣ w0
⎤⎦ (3.3)
whereA given in Eq. (2.2) is a square matrix that depends on the kinematics, τ = (τ1, τ2, ...τm)T
is the vector of cable tensions and Fs = fsw is the non-zero spine force. Since the solution of
Eq. (3.3) exists for τ , it can be written as:
τ = −fsA−1⎡⎣ w0
⎤⎦ (3.4)
Eq. (3.4) is a linear function of fs and thus, τ i’s increase/decrease monotonically upon in-
crease/decrease of fs and the sign of τ i’s remain the same as long as the sign of fs does not
change.
Theorem 2 A kinematically non-singular pose of a cable-based manipulator is tensionable iff
in the absence of external load and for an arbitrary positive spine force Fs (compressive force),
Eq. (3.1) and (3.2) have a solution with all positive τ i’s.
This theorem simply states that if the manipulator can stay rigid and balanced under an
arbitrary compressive spine force but with no external load, then it is tensionable and thus, can
stay rigid for any external force and torque by choosing a large enough spine force.
Proof. For the proof, it is shown that such a manipulator can be made rigid for any
arbitrary external load. The balance of forces for any arbitrary external force Fe applied at O0
and external moment Me is
Xτ iui +Fs +Fe = 0 (3.5)X
i
ri × τ iui +Me = 0
The above set of equations has a set of solutions for τ i’s because the manipulator is assumed
to be kinematically non-singular. Since the above set of equations is linear, superposition can
24
be applied to obtain the following two sets of equations:
Xi
1τ iui = −Fe (3.6)
Xi
ri ×1τ iui = −Me (3.7)
Xi
2τ iui = −Fs (3.8)
Xi
ri ×2τ iui = 0 (3.9)
where τ i =1τ i +
2τ i for i = 1, 2, ...,m. In this formulation,
1τ i’s are the forces in the cables
(positive or negative) due to the external force Fe and momentMe and2τ i’s are the cable forces
due to the spine force alone and are positive due to the assumption. If all1τ i’s are positive, then
τ i’s will be positive too and the cable-based manipulator is rigid. Otherwise, let −α2 = mini(1τ i)
and using Lemma 1, the cable tensions2τ i’s can be increased by increasing fs (the magnitude
of Fs) such that min(2τ i) ≥ α2. As a result we have:
min(τ i) ≥ min(1τ i) + min(
2τ i) ≥ 0 (3.10)
Therefore, by increasing the spine force, the rigidity can be obtained and hence, the manipulator
is tensionable.
In order to prove the converse, it is shown that for an arbitrary fs in Eqs. (3.8,3.9), if
there exists at least one negative cable tension,2τ i < 0, then there are situations in which
the manipulator cannot be made rigid. The proof is quite obvious by assuming the case of
Fe =Me = 0. According to the assumption there is at least one negative tension which never
changes sign upon changing of the spine force and hence, the manipulator cannot be made rigid.
As a result, to evaluate the tensionability, instead of dealing with external load on the end-
effector, we only need to show that the static equilibrium of the end-effector for an arbitrary
spine force can be obtained by tensile forces in all of the cables. This will ensure that the
manipulator is tensionable and thus can theoretically stand any external force and moment at
the end-effector. By “theoretically” we mean that the required spine force is finite, although
25
this force may not be feasible due to the practical constraints. The above approach is used later
on in this chapter to evaluate the tensionability of the new cable-based manipulators.
3.3 New Designs of Reduced DoF Cable-based Manipulators
In the rest of this chapter, some new designs of reduced DoF cable-based manipulators are
introduced. In these manipulators, cables are used to constrain the rotational motion of the end-
effector and provide a pure translational motion. The main application of these manipulators
is high-speed pick-and-place operations. In a pick-and-place operation, small objects (less than
1kg) are moved with high speeds (more than 100 cycles per minute). and therefore, the inertia
of the manipulator becomes important. Cable-based manipulators with low moving inertia
can improve significantly the operation speed of pick-and-place robots. The current cable-
based manipulators mostly have 6 DoF while in pick-and-place applications, three translational
motion with a possible rotational DoF for reorienting the object are sufficient. The following
designs are aimed at pure translational motion in space (XY Z motions) or in a plane (XY
motion). A more complete set of these designs can be found in [49].
3.3.1 BetaBot
In BetaBot, shown in Fig. 3-2, the upper triangle is the end-effector and the bottom one is
the base. Three pairs of parallel cables are attached to the end-effector and wound by three
winches after passing through guide holes on the winches’ frames. The winches are attached
to the base, and their configurations with cables and end-effector makes parallelograms such as
ABCD as shown in the same figure. It is known that [13], three parallelograms eliminate the
rotational motion of the end-effector. The spine is connected to the end-effector and base using
two ball-and-sockets or one universal joint and one ball-and-socket.
The equivalent rigid link manipulator for BetaBot is obtained by replacing each cable with a
slider with two ball-and-socket at the ends. In this equivalent manipulator, there are 13 bodies,
12 ball-and-socket and 6 prismatic joints. The Gruebler equation gives 13×6−12×3−6×5 = 12
degrees of freedom. There are 6 dummy DoF’s due to the twist of the sliders and there is also one
constraint on each pair of sliders which forces their displacements to be the same (because each
26
BA
CD
Cable guideholes
End-effector
Base
Winch
Spine
Figure 3-2: BetaBot: A 3 DoF cable-based manipulator with pure translational motion.
27
pair of cables is wound using one winch and thus, their lengths remain the same). Therefore,
the end-effector has 12− 6− 3 = 3 DoF’s and since the end-effector has no rotational motion,
it should have three pure translational motion.
Since the size of the end-effector plays no role in the kinematics of BetaBot, the end-effector
can be shrunk to a point. As a result, the kinematics becomes identical to that of a tripod
explained in Chapter 2. Tensionability of BetaBot will be shown in the next section to be
independent from the position of the end-effector.
The workspace of BetaBot is only limited by the maximum and minimum lengths of the
spine assuming that there is no limitations on the cables’ lengths. The theoretical workspace of
BetaBot (disregarding the spine length) is the half space above the base. As a proof, consider
the end effector is located at any arbitrary point above the base without any change in its
orientation. Segments AB and CD, according to Fig. 3-2, are equal and parallel hence, cables
AC and BD are equal and parallel too. Therefore, the location of the end-effector belongs to
the workspace. It is clear that, due to the non-rotating motion of the end-effector there is no
possibility of any interference between the cables.
Tensionability of BetaBot
BetaBot is tensionable everywhere in its workspace providing that certain conditions are en-
forced on the geometry of the manipulator. This is proved here by a geometrical approach.
Fig. 3-3 illustrates BetaBot that meets the following conditions (note that there are differences
between the geometries of BetaBot shown in Fig.3-2 and 3-3):
1. End-effector has a triangular shape as shown in Fig. 3-3. Each pair of the parallel cables
is attached to one edge of the triangle
2. The guide holes on the winches’ frames are all on the same plane and form a triangle
called Base triangle. This triangle is similar to the triangle of the end-effector but bigger.
As a result, the end-effector along with the cables form a convex region or a polyhedral
3. Any two cables never become in-line
4. The connection points of the spine (O and O0 in Fig. 3-3) are on the base and end-
effector triangles and have the same trilinear coordinates on them. A direct result is that
28
Basetriangle
Base
Cables
Fs
End-effector
Spine
O'
O
P1 P3
P2
Figure 3-3: BetaBot with a particular geometry that guarantees the tensionability.
the spine never intersects with the faces of the polyhedral of Condition 2 (even if the spine
and cables are extended from the base side).
To prove the tensionability, we use the theorem given Section 3.2. Therefore, for BetaBot to
be tensionable, an arbitrary positive spine force should be balanced by positive cable tensions.
For the proof, a geometrical approach is employed which solves the equilibrium equations of the
end-effector and shows that the solution consists of a set of positive tensions. Since the proof
is lengthy, it is presented here by four lemma and one theorem.
Lemma 3 If BetaBot meets the above mentioned conditions, then the three planes each of
which formed by one pair of parallel cables intersect at one point such as R (see Fig. 3-4).
Proof. Consider the plane that includes P1, P2, B1 and B2. If B1P1 and B2P2 are extended,
they meet at a point called R and form triangle ∆B1RB2 (unless the end-effector and the base
triangle are equal which contradicts Condition 2). In this triangle we have:
P1P2 k B1B2 ⇒RP2
RB2=P1P2
B1B2(3.11)
29
P1
P2
P3
B1
B2
B3
O'
O
R
Figure 3-4: The three planes formed by parallel cables and the spine meet at a point called R.
30
Now, consider the second plane that includes P2, P3, B2 and B3. If B2P2 and B3P3 are extended,
they meet at a point called R0. Note that R0 and R are both on the line of P2B2. In triangle
∆B2R0B3we have:
P2P3 k B2B3 ⇒R0P2R0B2
=P2P3
B2B3(3.12)
However, from Condition 2, we know that ∆P1P2P3 is similar to ∆B1B2B3 and hence:
P1P2
B1B2=P2P3
B2B3
which, by considering Eqs. (3.11,3.12), results in:
RP2
RB2=R0P2R0B2
(3.13)
Considering that R and R0 are on the same line, Eq. (3.13) states that R and R0 are coincident
and a similar reasoning shows that the third plane also passes through R.
Lemma 4 In BetaBot, the direction of the spine passes through point R as found in Lemma 3.
Proof. Assume point R as given in Fig. 3-4 is connected to O0 and extended to intersect
the base at point O00 (not shown in the figure). It is needed to prove that O00 coincides with O.
This is shown by the following relations:
∆RO00B1 : O0P1 k O00B1 ⇒O0P1O00B1
=RP1RB1
(3.14)
∆RB1B2 : P1P2 k B1B2 ⇒RP1RB1
=RP2RB2
∆RO00B2 : O0P2 k O00B2 ⇒O0P2O00B2
=RP2RB2
As a result:O0P1O00B1
=RP1RB1
=RP2RB2
=O0P2O00B2
(3.15)
and using a similar approach on ∆RO00B3, ∆RB1B3 and ∆RO00B1, we have:
O0P1O00B1
=RP1RB1
=RP3RB3
=O0P3O00B3
(3.16)
31
which results in:O0P1O00B1
=O0P2O00B2
=O0P3O00B3
(3.17)
However, Condition 4 states that:
O0P1OB1
=O0P2OB2
=O0P3OB3
(3.18)
By comparing Eq. (3.17) and (3.18), it is concluded that O and O00 are coincident.
For the next two lemmas, Fig. 3-5 should be considered. In Fig. 3-5a, the region bounded
by the cables is shown which is a polyhedral due to Condition 2. The faces of this polyhedral
are formed by the cables. This polyhedral has six faces Sij (i, j = 1, 2, 3 and i < j ) each of
which formed by two cable directions: ui and uj , respectively. In Fig. 3-5b, the force diagram
of the end-effector is shown. Fs is the spine force and each force vector σiui represents the
force of two parallel cables and hence σi is the total tension of the two parallel cables along ui.
Now, the next two lemmas follow.
Lemma 5 According to Fig. 3-5a, the half line Rl which starts from R in the direction of u1
intersects segment P1P2 at E.
Proof. It is obvious that half line Rl intersects the line of P1P2 otherwise, they should be
parallel which implies that the first pair of cables are inline which contradicts Condition 3. The
major effort of this proof is to show that the intersection occurs between P1 and P2 or E ∈ P1P2.
To prove this, it is sufficient to show that E belongs to the polyhedral of Fig. 3-5a. Let−−→OE be
the position vector of E:−−→OE =
−−→OR+ αu1 (3.19)
where−−→OR is the position vector of R and α is a positive real number. The polyhedral of Fig.
3-5a can be shown as:
Φ =nP ∈ R3
¯nij ·
−−→OP ≤ dij i, j = 1, 2, 3 i ≤ j
o(3.20)
where the center of coordinate O is set to be inside the polyhedral, nij is the unit vector normal
to face Sij pointing outward the polyhedral, and dij is the distance between face Sij and the
32
R
2u
E
P1
P2
P3
S11 S22
S12
22uσ11uσ
33uσ
-Fs
Fs
Spine force
(b)
(a)
X Y
Z
O
lCable 1
Cable 2 Cable 3
Cable 4
X Y
Z
2u1u
1u
1u
Figure 3-5: a) The cables in BetaBot form a polyhedral which is convex due to Condition 2 b)The forces applied to the end-effector form a cone.
33
center of coordinates O. As a result, in order to have E ∈ Φ, the following six inequalities
should hold true:
nij ·−−→OE ≤ dij i, j = 1, 2, 3 i ≤ j (3.21)
For i = j = 1 we have:
n11 ·−−→OE = n11 ·
³−−→OR+ αu1
´(3.22)
= n11 ·−−→OR+ αn11 · u1
since R ∈ S11 and n11 · u1 = 0 we have:
n11 ·−−→OE = d11 ≤ d11 (3.23)
For i = j = 2, we have:
n22 ·−−→OE = n22 ·
³−−→OR+ αu1
´(3.24)
= n22 ·−−→OR+ αn22 · u1
it is known that R ∈ S22 hence, we have:
n22 ·−−→OE = d22 + αn22 · u1
?≤ d22 (3.25)
which requires αn22 · u1 ≤ 0. To show this, an auxiliary point such as−−→OP 2+αu1 is considered.
This point is on cable 2 according to Fig. 3-5a and hence, belongs to polyhedral Φ. Therefore,
one of the inequalities that this point should satisfy is:
n22 ·³−−→OP 2 + αu1
´≤ d22 (3.26)
however, P2 is a corner of the end-effector and thus, P2 ∈ S22 which implies that n22·−−→OP 2 = d22.
34
Using this in Eq. (3.26) gives:
n22 ·³−−→OP 2 + αu1
´= d22 + αn22 · u1 ≤ d22 (3.27)
⇒ αn22 · u1 ≤ 0
which was needed to show that inequality (3.25) is satisfied. Similarly, for i = j = 3,−−→OP 1+αu1
is taken as the auxiliary point.
For i = 1, j = 2 the inequality to be satisfied is:
n12 ·−−→OE ≤ d12 (3.28)
⇒ n12 ·³−−→OR+ αu1
´≤ d12
⇒ n12 ·−−→OR+ αn12 · u1 < d12
Again, since R ∈ Φ we have n12 ·−−→OR ≤ d12. Therefore for inequality (3.28) to hold true, it is
sufficient to show that αn12 · u1 = 0 which is obvious because u1 is normal to n12. A similar
approach works for i = 1, j = 3. Finally, for i = 2, j = 3 we should have:
n23 ·−−→OE = n23 ·
³−−→OR+ αu1
´≤ d23 (3.29)
Again, we have R ∈ Φ and thus, n23 ·−−→OR ≤ d23. It would be sufficient to show that αn23 ·u1 ≤ 0.
For this purpose, consider the cone that is formed by extending S12, S13 and S23. This cone has
a similar shape to the one of Fig. 3-5b. The edges of this cone are along u1, u2 and u3. Let the
apex of this cone be called W and take−−→OW + αu1 as an auxiliary point which belongs to the
cone and hence satisfies the following inequality:
n23 ·³−−→OW + αu1
´≤ d23 (3.30)
Now, since n23 ·−−→OW = d23, it is concluded that αn23 · u1 ≤ 0 which shows that inequality (3.29)
is held and hence, E ∈ Φ which completes the proof.
Lemma 6 According to the force diagram of Fig. 3-5b, the spine force is balanced by positive
35
σi’s i = 1, 2, 3 i.e.:
σ1u1 + σ2u2 + σ3u3 = −Fs (3.31)
Proof. .For the proof, we first show that the direction of spine force lies inside the cone
formed by cables’ directions u1, u2 and u3. For this purpose, we use Condition 4 which states
the spine never intersects any faces of the polyhedral of cables (Fig. 3-5a). Now, noting that
the faces of the cone in Fig. 3-5b are parallel to S12, S13 and S23 it is resulted that −Fs never
touches the faces of the cone and hence, is inside the cone. Based on the definition of a convex
cone [50], the cone of Fig. 3-5b can be expressed as:
Ω =nP ∈ R3
¯−−→OP = σ1u1 + σ2u2 + σ3u3 σ1,σ2,σ3 ≥ 0
o(3.32)
Now, since −Fs is always inside the cone, it can be considered as the position vector for a point
inside the cone. As a result, the definition of the cone given in Eq. (3.32) states that:
−Fs = σ1u1 + σ2u2 + σ3u3 σ1,σ2,σ3 ≥ 0 (3.33)
which completes the proof.
Theorem 7 If BetaBot satisfies Conditions 1-4, it is tensionable everywhere.
Proof. For the proof, we show that a positive spine force is statically balanced by positive
tension in cables. For this purpose, first consider the force equilibrium of the end-effector (see
Fig. 3-5b). According to Lemma 6, the force equilibrium on the end-effector is met by positive
σ1, σ2 and σ3, where for instance, σ1 is the total tension of cables 1 (τ1) and 2 (τ2). Now, let:
τ1 =P2E
P1P2σ1 τ2 =
P1E
P1P2σ1
therefore, we have τ1, τ2 > 0, τ1+ τ2 = σ1 and since E is on P1P2 (Lemma 5), the moments of
τ1u1 and τ2u1 about E cancel each other. As a result, cable forces τ1u1 and τ2u1 can be replaced
by force σ1u1 applied at E. Note that the line of action passes through R. Similarly, other cable
forces can be replaced by forces whose line of action passes through R. Now, based on Lemma
4, the direction of the spine also passes through the same point and hence, the equilibrium of
36
End-effector
Base
Spine Rotating Arm
hX
Z
OY
a
bO'wr
Figure 3-6: DeltaBot: A cable-based manipulator with three pure translational motion.
the moments is also satisfied which completes the proof.
3.3.2 DeltaBot
DeltaBot, as shown in Fig. 3-6b, uses the same cable parallelograms to provide the end-effector
with pure translational motion. However, instead of winding cables, they are pulled by three
rotating arms. These arms are connected to the base with revolute joints and rotated by
electrical motors (not shown in the figure). Each pair of cables forms a parallelogram similar
to those of BetaBot. In comparison to BetaBot, DeltaBot has a relatively smaller workspace
because the lengths of the cables are constant. However, it is easier to build and operate since
there are no guiding holes as in BetaBot which result in friction and wear in the cables. The
equivalent rigid link manipulator of DeltaBot is Delta4 [13] and hence, their kinematics are
identical as long as the cables in DeltaBot are in tension
Due to the complex kinematics of DeltaBot, the tensionability analysis of this manipulator
is much more complex than that of BetaBot. The author spent several months with no success
37
Table 3.1: The major dimensions of a typical DeltaBoth a b r wmm mm mm mm mm
114 150 508 14 50
to find an analytical explanation for the tensionable region of the workspace. However, based
on numerical investigations on several examples, it was found that as a rule of thumb, as long
as the spine is connected to the centers of both end-effector and base triangles, the manipulator
is tensionable in most of the workspace. The numerical investigation consists of a search over
the workspace of the robot and evaluation of the tensionability using Theorem 2 according to
the following steps:
1. Scanning the workspace: For this purpose, three nested loops picked all possible values
for the angles of rotating arms between −90 to 90 with a step of 2. The angle of the
first arm is shown in Fig. 3-6 by θ1. For each selection of the arms’ angles, it was checked
whether it represents a point of the workspace of the robot by a numerical search for a
possible solution for the kinematics equations of the manipulator.
2. Evaluation of the tensionability: For each point of the workspace found in step 1, the
tensionability of the manipulator was evaluated using Theorem 2. For this purpose, the
direction vectors of all the cables and the spine were found and Eqs. (3.1 and 3.2) were
solved for a unit compressive spine force. The positiveness of all the cable tensions, τ i’s,
indicates that the manipulator is tensionable at this pose.
For a typical design with dimensions given in Table 3.1, the workspace and the tensionable
regions are presented in Fig. 3-7. The figure represents the workspace of the manipulator in
6 planes of different elevations according to OXY Z coordinate frame of Fig. 3-6. The points
belonging to the workspace are shown by hallow squares from which the untensionable points
are marked by black dots. It is seen that the untensionable regions are located at low heights.
These regions are not practically considered as the workspace since it requires the minimum
length of the spine to be too small which is not feasible.
38
Y(m
)
X(m)
Z=0.1m
Y(m
)
X(m)
Z=0.2m
Y(m
)
Z=0.4m
Y(m
)
Z=0.46m
Y(m
)
Z=0.52m
Y(m
)
Z=0.58m
-0.5 0 0.5-0.5
0
0.5
-0.5 0 0.5-0.5
0
0.5
-0.5 0 0.5-0.5
0
0.5
-0.5 0 0.5-0.5
0
0.5
-0.5 0 0.5-0.5
0
0.5
-0.5 0 0.5-0.5
0
0.5
X(m) X(m)
X(m) X(m)
Untensionablepoints
Figure 3-7: The workspace of DeltaBot: The points that belong to the workspace are shownby black squares from which the untensionable points are marked by hallow dots.
39
Universal Joint Versus Ball-and-Socket
In both DeltaBot and BetaBot, it was assumed that in connecting the spine to the base and
end-effector, there is at least one ball-and-socket such that the spine does not impose any
kinematic constraints on the end-effector. However, it is interesting to note that the spine can
be connected to the base and end-effector by universal joints because the rotational motions
of the end-effector has been already eliminated by the parallelograms. Therefore, the universal
joints provide a redundant constraint which does not affect the kinematics of the manipulator.
In addition, it improves the rotational rigidity of the end-effector in Z direction meaning that
the torque capacity of the manipulator is enhanced. As a result, it is recommended to use
universal joints on both ends of the spine. The effect of this change on the torque capacity of
the manipulator will be studied in the next chapter.
3.3.3 DishBot
In DishBot, two independent sets of cables are used. The first set, called drive cables, moves
the end-effector and the second set, termed passive cables, eliminates the rotation. A schematic
of this design is shown in Fig. 3-8a, b and c. The spine, in this design, is composed of a shaft
sliding inside a tube along with a spring. The tube is connected to the center of the base by a
universal joint. The spring is fixed to the tube from one end and to the shaft from the other
end. It produces a compressive force to maintain tension in the drive cables. A ball-and-socket
is used to connect the end-effector to the spine.
As seen in Fig. 3-8b, drive cables are connected to the tip of the spine similar to the tripod
design of Landsberger [1] or Mianowski’s robot [25]. Each cable is pulled and collected by a
winch that is hinged to the base such that it can align itself with the cable direction. In Fig.
3-8c, the passive cables are shown. Each cable starts from the end-effector on the top and
proceeds down to the base where it bends around a pulley (such as pulley i in Fig. 3-8c) and
goes towards the spine. Using another pulley (such as pulley j) on the tube to guide the cable,
it reaches the bottom end of the spine shaft. Each cable is in series with a tensile spring as a
pretensioner to produce tensile force in the cable.
The length of the passive cables are constant which makes the end-effector stay parallel to
the base. However, the perfect parallelness is only obtained if the radius of the two guiding
40
pulleys are zero and the pulleys on the tube coincides with the center of the universal joint. Fig.
3-9 shows how the passive cables make the end-effector stay parallel to the base in a similar 2D
manipulator. In practice, complete parallelness is not achieved since the pulleys have non-zero
radius and they cannot be placed at the center of the universal joint; however, the error can be
minimized by proper sizing of the pulleys.
The kinematics of this manipulator is relatively simple since it only depends on the drive
cables. The inverse and direct kinematics have closed form solutions [51]. The weakness of this
manipulator is mostly in its complexity and large size. In order to prevent any collision between
cables, the pyramid formed by the drive cables should be always inside the prism formed by the
passive cables. This results in a relatively large end-effector which adds to the moving inertia.
Tensionability of DishBot
For the tensionability of DishBot, using Theorem 2 given in Section 3.2, it is necessary and
sufficient to show that a positive spine force (compressive) produces positive tension (tensile
forces) in all cables that satisfy the static equilibrium. It will be shown here that this manipu-
lator does not exactly comply with the requirements of this theorem. The main reason is that
the spine is not the only source for producing tension in the cables in this manipulator while in
the general model, introduced in Fig 3-1, it is only the spine that provides the compressive force
on the end-effector and maintains tension in the cables. In DishBot, the pretensioner springs
connected to the passive cables (see 3-8c ) are also helping in maintaining the rigidity of the
manipulator and hence, should be considered in the analysis of tensionability.
The free body diagram of the end-effector is shown in Fig. 3-10. The passive cables are
in parallel with the spine and their tension are shown by a superscript p while for the tension
of drive cables, a superscript of d is used. According to Theorem 2, the equilibrium equations
(3.1) and (3.2) are found to be:
XF = τd1u1 + τd2u2 + τd3u3 + (fs − τp1 − τp2 − τp3)w = 0 (3.34)XM = −τp1 (r1 × w)− τp2 (r2 × w)− τp3 (r3 × w) = 0 (3.35)
where τdi ui’s are drive cable forces (i = 1, 2, 3), −τpjw’s are passive cable forces, rj ’s. are the
41
End-effector
Base
U-joint
Spine
ElectricalMotor
winch
(a)
(b) (c)
Collar
Drive cablesPassive cables
i
j
Pretensionerspring
Figure 3-8: a) A 3 DoF cable-based manipulator with two independent sets of cables. b) Theconfiguration of the drive cables c) The configuration of the passive cables.
42
a c
b d
Figure 3-9: Assuming the lengths of the two cables ab and cd are equal, the end-effector alwaysremains parallel to the base.
position vectors of the anchor points of the passive cables (j = 1, 2, 3) and fsw is the spine force.
A quick inspection of the above equations shows that Eq. (3.35), which is the equilibrium of the
moments, is a set of homogenous equations independent from the spine force which, in general,
result in zero tension for passive cables. The tension of the drive cables are found from Eq.
(3.34). Note that the drive cables form a cone which contains the spine and hence, using Lemma
6, the drive cable tensions are positive as long as the spine force is positive (compressive) but it
should be noted that the actual spine force in Eq. (3.34) is fs − τp1 − τp2 − τp3. As a conclusion,
tension in the drive cables can be generated to any desired level by choosing a large enough
spine force but it does not affect the tension in the passive cables.
It should be remembered that the core idea of tensionability is that tension can be generated
in all cables in order to maintain the rigidity of the manipulator. In order for DishBot to be
tensionable, we need to show that the tension in the passive cables can be also generated to any
desired level. For this purpose, note that, in Fig. (3-10), if O0 is the geometrical center of the
three anchor points of the passive cables (P1, P2 and P3) then Eq. (3.35) has non-zero solutions
for passive cable tensions. In this case, the solution would be in the form of τp1 = τp2 = τp3 = τp
where τp is an arbitrary real value and thus, can be positive. It is known that such geometrical
center coincides with the centroid of triangle ∆P1P2P3. As a result, if O0 is chosen to be the
centroid of triangle ∆P1P2P3, positive equal tensions in passive cables are determined only by
43
Passive cables' force
Drive cables' force
Spine force
O'
wF )ss f=
1,2,3i ,idi =uτ
1,2,3j ,pj =w)τ
jr
X Y
Z
O
Pj
Figure 3-10: Free body diagram of DishBot.
the pretensioner springs which are attached in series to the passive cables.
As a conclusion, DishBot is tensionable as long as the following conditions are met:
1. O0 coincides with the centroid of ∆P1P2P3
2. The pretension of the pretensioner springs are equal (τp)
3. The spine lies inside the pyramid of the drive cables
Not as a condition for the tensionability but to have the rigidity of the manipulator, it was
also shown that the pretension of the pretensioner springs has to be positive and the spine force
should satisfy fs − τp1 − τp2 − τp3 > 0 which means fs > 3τp.
3.3.4 Planar DeltaBot and BetaBot
DeltaBot and BetaBot can be also made as 2 DoF planar manipulators providing XY motions
which is sufficient for many pick-and-place applications.
Schematic diagrams of 2D DeltaBot and BetaBot are shown in Fig. 3-11. The spine is
connected to the base and end-effector by revolute joints so that the end-effector can only
44
move on XY plane. The end-effector is constrained by three cables. Two of the cables form
a parallelogram which eliminates the rotation of the end-effector. As a result, the end-effector
can only move in X and Y directions. Similar to the spatial version, the workspace of the 2D
BetaBot can be extended by increasing the lengths of cables and spine while in 2D DeltaBot,
the lengths of the cables are fixed which results in a smaller workspace.
In BetaBot, the parallelogram is maintained by two winches with common shaft which make
them move simultaneously and hence, keep the cables’ lengths equal. In DeltaBot, a pair of
synchronous rotating arms preserves the parallelogram. The synchronization can be obtained
by a pair of pulleys and a timing belt or a simple 4-bar parallelograms as seen in Fig. 3-11.
Tensionability of the 2D DeltaBot and BetaBot
2D DeltaBot and BetaBot are both tensionable everywhere in their workspace. This can be
proved using a similar approach to what used for spatial BetaBot. There are two geometrical
conditions that should be met for the tensionability of these two manipulators. As shown in
Fig. 3-12a, these two conditions are as follows:
1. Cable 1 is always on the right and Cable 3 is always on the left side of the spine. This is
obtained if the spine is hinged to the base at a point between the two winch systems (in
2D BetaBot) or the rotating arms (in 2D DeltaBot as shown in Fig. 3-11b)
2. On the end-effector, the spine and Cable 3 are concurrent at point E which is located
between Cables 1 and 2
To show the tensionability, we prove that a compressive spine force can be balanced by
positive tension in cables. The proof is quite similar to the one of Theorem 7 and is briefly
explained here.
We first consider the force equilibrium of the end-effector subject to a compressive spine
force. According to the free body diagram shown in Fig. 3-12b, we have:
σ1u1 + τ3u2 + fsw = 0 ⇒ σ1u1 + τ3u2 = −fsw (3.36)
45
End-effector
Base
Spine
synchronous arms
End-effector
Base
Spine
synchronous winches
(a)
(b)
X
Y
X
Y
Figure 3-11: Plannar version of BetaBot (a) and DeltaBot (b). Both manipulators provide aXY motion for the end-effector.
46
End-effector
Spine Force
Cable 1
P1 P2E
11uτ
12uτ
12
1
11
ˆ)
(ˆ
u
u
ττ
σ
+=
23uτ
wsf
(a) (b)
Cable 2Cable 3
Figure 3-12: a) The configuration of the cables and spine in plannar DeltaBot and BetaBot b)The free body diagram of the end-effector.
Due to Condition 1, the direction of the spine, w, is located between u1 and u2 (cables’
direction). Therefore, the projection of −fsw on u1 and u2 will be positive and hence σ1, τ3 >
0. Now, let:
τ1 =P1E
P1P2σ1 and τ2 =
P2E
P1P2σ1 (3.37)
It is clear that τ1 + τ2 = σ1. Since σ1 > 0 and E is located between P1 and P2, the moment
of τ1u1 about E cancels the one of τ2u1 and hence, these two forces can be replaced by σ1u1
without violating the equilibrium of the system. Finally, since all three forces on the end-
effector, σ1u1, τ3u2, fsw, are concurrent at E, the equilibrium of the moments is also met
which completes the proof.
3.4 Conclusion
In this chapter, the concept of the reduced DoF cable-based manipulators was established
and several new designs were introduced and analyzed. The main application considered for
these manipulators is high-speed pick-and-place operations which requires translational motion.
Cables, in these manipulators, are used to eliminate the rotational DoF of the end-effectors.
It was shown that a tensionable cable-based manipulator is potentially identical to its rigid
47
link counterpart and inherits its characteristics. As a result, tensionability is an essential
property for this type of manipulators. This property that any finite external load can be
balanced by cables tension using a finite spine force. A theorem was given and proved which
shows that tensionability depends only on the kinematics of the manipulator and the spine and
can be evaluated regardless of the external load.
For all of the cable-based manipulators introduced in this chapter, the tensionability was
studied thoroughly. BetaBot and both planar manipulators were shown to be tensionable
everywhere in the workspace. In DishBot, it was shown that the tensionability is obtained
if the pretension in the passive cables is sufficiently large. For DeltaBot, no proof was found
however, some guidelines were provided to make most of the workspace tensionable.
48
Chapter 4
Design of the Cable-based
Manipulators
In this chapter, a design procedure is proposed for cable-based manipulators. Particularly,
DeltaBot and BetaBot introduced in the last chapter are studied and their detailed designs
are presented. The main focus of this chapter is on the design challenges related to the use of
cables. Specifically, force and torque capacities which are specific to cable-based manipulators
are thoroughly studied and the design algorithm is developed.
Due to the unilateral nature of the cable forces, the design of cable-based robots is more
complicated than their rigid-link counterparts. That is because maintaining tension in all
cables must be considered as a design requirement. Therefore, the design problem of a typical
cable-based robot has two major phases:
1. Synthesis of the manipulator in order to fulfil the kinematics requirements such as workspace,
footprint, condition number, etc. This phase of the design is similar to the design of rigid-
link robots and has been addressed in several works such as [4, 13, 35].
2. Design of the force/torque capacity. As it was mentioned in the last chapter, in the
cable-based manipulators of this work, the cable tension is provided by an element called
spine which maintains a constant force on the end-effector. It is evident that this force
should increase upon a larger force/torque capacity. However, any increase on the spine
force results in larger cable tensions and hence, requires bigger actuators. As a result, an
49
optimum value for the spine force should be determined.
It should be noted that the tensionability of a cable-based manipulator makes the second
stage of the design process independent from the first one meaning that for a tensionable
manipulator, the second stage can be accomplished by a finite pretension in the cables after
the geometry is determined. However, this finite pretension or in other words, the spine force
required to produce this tension may not be feasible. As a result, the two stages are considered
together as an optimization problem which requires some iterations between the synthesis of
the manipulator and spine force design.
Although the design procedure in this chapter is developed for DeltaBot and BetaBot, the
overall concepts are general and can be adapted to any particular manipulator.
4.1 Design Strategy and Requirements
As a typical design problem, the design of DeltaBot and BetaBot is presented in the form of an
optimization problem. A set of requirements is considered for the manipulators for which there
may be more than one possible design. In the optimization problem, the one which minimizes
a cost function is found. The design requirements and costs are defined in the following.
The requirements in the design of BetaBot and DeltaBot are expressed as:
1. The footprint of the manipulator,
2. The geometrical workspace meaning the points in XY Z that should be reached by the
end-effector,
3. The maximum magnitude of the force Fmaxthat should be applied by the end-effector in
any arbitrary direction at any point in the workspace,
4. The maximum magnitude of the torque Mmax that should be applied by the end-effector
in any arbitrary direction at any point in the workspace.
Note that the targets of the last two items are the force and torque capacity of the manip-
ulator specific to the cable-based manipulators of this work. The force and torque capacity of
the manipulator at each point in the workspace should be designed such that the manipulator
50
can apply a given magnitude of force/torque in any arbitrary direction. For instance, in the
high-speed robotic applications, the maximum required acceleration for the payload, which is
a main criterion for the design of the robot, can be expressed in terms of the force/torque
capacity and incorporated into the design procedure.
The cost of the manipulator, which will be used to find the best design through an optimiza-
tion, includes the most critical aspects of the quality of the manipulation and manufacturing
expenses. The expenses of a typical DeltaBot and BetaBot are expressed in terms of the fol-
lowing main items:
1. Spine force fs: the higher the spine force is, the higher the overall tension in the cables and
the load on the actuators will be. It also directly influences the pretension of the cables
for when the manipulator is not moving. This pretension results in a constant torque
load on the actuators which should be less than the stahl torque limit of the motors. As
a result, the spine force has to be as small as possible,
2. Maximum actuator torque Tmax: the size of the actuators directly affects the overall price
of the robot and hence, has to be minimized,
3. Maximum cable tension τmax: high tension in cables increases the frequency of mainte-
nance. Especially, in BetaBot in which the cables are in contact with the guiding holes,
the tension in cables speeds up the wear. In DeltaBot, there are bending of the cables at
both ends of each cable and hence, high tension in cables increases the fatigue in cables.
4. Maximum error gain EG: error gain is a parameter defined to represent the dexterity of
the manipulator. Dexterity is a measure for the kinematic performance of a manipulator
and is used as a quality index for the designs. There are several definitions and propo-
sitions for the dexterity based upon different aspects of the Jacobian of a manipulator.
Some of them are reviewed in [52]. The most famous one is condition number proposed
by Gosselin [10] which is the ratio between the greatest and smallest singular values of the
Jacobian. In this work, the concept of dexterity is used in the form of a simple parameter
called error gain, EG, which shows how much the positioning error of actuators influ-
ences the positioning error of the end-effector. For a high-speed pick-and-place robot, it
is essential to have good positioning accuracy at the two ends of the path considering that
51
there is a short time for the end-effector to settle before the next move starts. Therefore,
the maximum of the error gain EGmax in the workspace should be minimized and hence,
is included in the design cost.
Before the cost of a design can be computed, the optimum values of spine force and actu-
ators’ torque should be found. Note, that for a given geometrical synthesis of the robot, the
minimum values of spine force and motor torque that satisfy the force/torque requirements
should be calculated. Finding the optimum spine force is considered as a separate problem and
is thoroughly studied in the next section. The following sections deal with the calculation of
other components of the cost function.
4.2 Optimum Spine Force: fs
The optimum spine force problem can be expressed by the following question: For a given syn-
thesis of a cable-based manipulator, what is the minimum spine force for which the force/torque
capacity includes a desired set of forces/torques?. In this work, it is assumed that the required
set of forces/torques are considered as: all forces/torques of magnitudes less than or equal to
Fmax/Mmax in any arbitrary direction at any location in the workspace. In other words, in
this problem, the force/torque capacity of the cable-based manipulator is adjusted by the spine
force to comply with the design requirements.
In the following, the force and torque capacities are analyzed using a geometrical approach.
It will be shown that, force and torque capacities can be visualized by common geometrical
shapes whose properties are used for finding the minimum spine force. This analysis is carried
out for a single pose of the manipulator to find the minimum required spine force for that pose.
The overall required spine force will be found by repeating this analysis for other points of the
workspace.
4.2.1 Force Capacity: Visualization and Analysis
In Fig. 4-1a, the general configuration of DeltaBot and BetaBot is shown. The three pairs of
parallel cables which are the core of these manipulators are preserved but the movement of the
cables can be provided by many mechanisms such as winches, rotating arms or sliders. The
52
relative position of the cable anchor points with respect to the center of the end-effector are
shown by r1 to r6. Also, the directions of the cable pairs are shown by unit vectors u1 to u3 and
the spine force is indicated by Fs. The tension in cables are shown by τ1 to τ6. The external
force is Fe and the external moment on the end-effector isMe. In Fig. 4-1b, the force diagram
of the end-effector is illustrated. The number of independent cable force vectors can be reduced
from 6 to 3 using the parallelness of the cables. The force balance equation is:
σ1u1 + σ2u2 + σ3u3 +Fs +Fe = 0 (4.1)
where σ1,σ2,σ3 are the combined tension of the three cable pairs as:
τ1 + τ2 = σ1 (4.2)
τ3 + τ4 = σ2
τ5 + τ6 = σ3
The force capacity of the end-effector as defined in the last section is the set of all forces
that end-effector can apply without losing tension in any of the cables. This set is shown by F
and is generated by vector −Fe (the reaction to the external force) found from Eq. (4.1):
F = F |F = σ1u1 + σ2u2 + σ3u3 +Fs, σ1,σ2,σ3 ≥ 0 (4.3)
It is known that σ1u1 + σ2u2 + σ3u3 is a linear combination of three unit vectors u1, u2, u3
with positive coefficients. This combination, where σ’s take positive real values, is the loci of
the convex cone shown in Fig. 4-2. This cone which is the geometrical presentation of the
force capacity F is located in the three dimensional space of the force vectors whose three axes,
Fx, Fy, Fz, are along the axes of global coordinate system shown in Fig. 4-1 and is called force
space in this thesis. According to Fig. 4-2, the shape of the force capacity is determined by the
directions of the cables (u1, u2, u3) and hence, is a function of the robot’s pose. The location
53
X Y
Z
O
Base
End-effector
1r 2r
4r
6r
wF ˆss f=
(a) (b)
sF
vF ˆee f=
X Y
Z
O
1τ 2τ
3τ
4τ5τ
6τ
Cables
Spine
Slider
Winch
Rotatingarm
eM
1u
2u3u
22uσ
11uσ
33uσ
vF ˆee f=
Figure 4-1: a) The general configuration of the cable-based robot with pure translational motion,b) The force balance of the end-effector.
Fx
Fy
Fz
O
S1S2
1u
2u3u
w
F
ˆs
sf
=
Figure 4-2: Force capacity of the cable-based robot.
54
of the apex is determined by the spine force. The spine force is:
Fs = fsw (4.4)
where fs is the force magnitude and w is the direction of the spine. It is known from the
definition of force capacity in Eq. (4.3) that by increasing fs the cone is moved along w in the
force space. This cone and hence, the force capacity of the manipulator can be represented by
three linear inequalities associated with the three faces S1, S2 and S3 shown in Fig. 4-2 which
constitute the cone. As a result, Eq. (4.3) can be written as:
F = F |ni · F ≤ ni · fsw , i = 1, 2, 3 (4.5)
where ni is the unit vector normal to face Si and pointing outside of the cone and can be found
using the cable direction vectors. For instance n1 is:
n1 =u1 × u2ku1 × u2k
(4.6)
Note that in Eq. (4.5), ni · fsw is the distance between face Si and the origin.
The force requirement of the manipulator, i.e. the force that manipulator should be able to
apply, can be also presented geometrically in the force space of Fig. 4-2. The maximum force
that the manipulator should apply has a magnitude of Fmax and can be in any direction. The
set of all forces with the same magnitude form a sphere in the force space centered at the origin
and for this case, the radius of the sphere will be Fmax as given in Section 4.1. This force is
mainly considered to accelerate the payload and does not account for the weight of the payload
which may not be negligible. The maximum weight force is considered as a constant force in Z
direction and hence, should be added to the above mentioned sphere. As a result, the sphere
is not centered at the origin anymore but moved in the opposite direction of the weight force
with a distance of Fwght which is the maximum weight of the payload. The sphere along with
the force capacity is shown in Fig. 4-3. In this figure, it is assumed that the gravity is acting
in negative Z direction.
In order to satisfy the force requirement, fs is selected so that the force capacity cone
55
maxFradius =
SPf : The forcerequirement sphere
1u
2u3u
wF
ˆs
sf
=Fx
Fy
Fz
O
kwghtF
The force capacity ofthe manipulator
Figure 4-3: The force capacity cone and sphere SPf which represents the desired maximumrobot’s payload.
includes sphere SPf . It is clear that, the minimum fs which satisfies this condition will cause
at least one of the cone’s faces to be tangent to sphere SPf . Therefore, it is sufficient to find
the three values of fs each of which makes one of the cone’s faces tangent to sphere SPf . The
largest of the three guarantees the inclusion of the sphere in the force capacity cone. This
can be done by recalling that the distance between face Si and the center of sphere SPf is
ni · (fsw−Fwghtk) and has to be Fmax in order for the face to be tangent to sphere SPf :
ni · (fsw−Fwghtk) = Fmax , i = 1, 2, 3 max (4.7)
⇒ f is =Fmax + ni · Fwghtk
ni · w, i = 1, 2, 3 (4.8)
fs = maxi=1,2,3
(f is) (4.9)
where f is is the required spine force to make face i tangent to sphere SPf .
It should be noted that the above formula always results in a positive fs if the manipulator
is tensionable. That is because the tensionability guarantees that the force capacity can be
expanded as much as desired by choosing a large enough spine force. The geometrical interpre-
tation is that in a tensionable pose, the direction of the spine force lies inside the force capacity
56
cone so that the force capacity expands in all directions upon increasing of the spine force.
Eq. (4.7) to (4.9) guaranty non-negative tensions in the cables. In practice however, a
minimum positive tension must be always maintained in the cables. Assume that this minimum
tension is η and the new cable tensions are hence τ0’s as:
τ i = τ0i − η i = 1, 2, .., 6 (4.10)
According to this definition, having non-negative values for τ i implies that τ0i is not less than
η. The new combined tension of the cable pairs are also redefined as:
σ01 = τ
01 + τ
02 = σ1 + 2η (4.11)
σ02 = τ
03 + τ
04 = σ2 + 2η (4.12)
σ03 = τ
05 + τ
06 = σ3 + 2η (4.13)
The new force capacity in which a minimum tension of η is maintained in all cables is found
from Eq. (4.1) and (4.2) to be:
F0 = F |F = (σ1 + 2η)u1 + (σ2 + 2η)u2 + (σ3 + 2η)u3 +Fs , σ1,σ2,σ3 ≥ 0
= F |F = σ1u1 + σ2u2 + σ3u3 +Fs + 2η(u1 + u2 + u3)
σ1,σ2,σ3 ≥ 0 (4.14)
Comparing (4.14) with (4.3), the new force capacity has a similar cone shape in the force space
but translated downwards with vector 2η(u1+ u2+ u3). This new cone can be expressed by its
three faces as:
F0 = F |ni · F < ni · (fsw+ 2η(u1 + u2 + u3)) , i = 1, 2, 3 (4.15)
where ni and F are the same as Eq. (4.5) and hence, the design equations are:
ni ·³f isw−Fwghtk+ 2η(u1 + u2 + u3)
´= Fmax, i = 1, 2, 3 (4.16)
57
⇒ f is =Fmax+Fwghtni · k− 2ηni · (u1 + u2 + u3)
ni · w, i = 1, 2, 3 (4.17)
where f is is defined in Eq. (4.7) and thus, the required spine force is found by Eq. (4.9).
4.2.2 Torque Capacity: Visualization and Analysis
Similar to force space defined in the last section, the torque space of the end-effector is considered
as a three dimensional space whose axes are torque componentsMx,My andMz along the axes
of global coordinate system XY Z. It will be shown that the torque capacity of the end-effector
when the spine is connected to the manipulator by two ball-and-socket forms a parallelepiped
in the torque space.
The torque balance equations of the end-effector (see Fig. 4-1a) is:
(τ1r1 + τ2r2)× u1 + (τ3r3 + τ4r4)× u2 + (τ5r5 + τ6r6)× u3 +Me = 0 (4.18)
where Me is the external moment applied to the end-effector. The torque capacity of the
end-effector is shown by M and is the set of all torque vectors which can be applied by the
end-effector before loosing the rigidity. Using Eq. (4.18), the torque capacity can be found as:
M = M |M = (τ1r1 + τ2r2)× u1 + (τ3r3 + τ4r4)× u2 + (τ5r5 + τ6r6)× u3
τ1,...,τ6 ≥ 0 (4.19)
In the last section, the force capacity was analyzed based on the combined tension of each
cable pair: σ1,σ2,σ3. Here, a similar approach is taken and the torque capacity is also expressed
in terms of the combined cable tensions.
For this purpose, let the moment produced by ith cable with unit tension be Mi. For the
first two cables we have:
M1 = r1 × u1 (4.20)
M2 = r2 × u1 (4.21)
58
and M3,M4, ...,M6 are defined similarly. Now, the contribution of the first two cables to the
torque capacity is written using σ1,M1,M2. For this purpose, note that the torque of these
two cables is (τ1r1 + τ2r2)× u1 which can be written as:
Ω1 = τ1r1 × u1 + (σ1 − τ1)r2 × u1 (4.22)
Setting α1 = τ1σ1, we have:
Ω1 = σ1M2 + α1σ1(M1 −M2) 0 ≤ α1 ≤ 1 (4.23)
Eq. (4.23) shows that the moment generated by the first pair of parallel cables results from the
distribution of the tension between the two cables e.g. when α1 = 0 all the tension σ1 is taken
by the second cable and τ1 = 0 and by changing α1, the tension distribution changes. Similarly
the contribution of the other two pairs of cables are found and thus, M from definition (4.19)
can be written in terms of Mi’s and σi’s as:
M = M |M = σ1M2 + σ2M4 + σ3M6+ (4.24)
α1σ1(M1 −M2) + α2σ2(M3 −M4) + α3σ3(M5 −M6),
0 ≤ α1,α2,α3 ≤ 1
whereM3 toM6 and α2,α3 are defined similarly as those forM1,M2 and α1, respectively. Eq.
(4.24) helps to understand the shape of the torque capacity. Assume that the manipulator is at
a fixed pose with known external and spine forces on the end-effector. Therefore, vectors M1
toM6 and combined cable tensions σ1 to σ3 are constants. In Eq. (4.24), however, α1,α2 and
α3 can vary between 0 and 1. As a result, vectorM is the loci of a parallelepiped whose three
unparalleled edges are determined by vectors σ1(M1 −M2), σ2(M3 −M4) and σ3(M5 −M6)
and is translated by vector σ1M2+ σ2M4+ σ3M6. The torque capacity M is plotted in torque
space and shown in Fig. 4-4.
The way Mi is defined (see Eq. (4.20),(4.21)) shows that the shape of the parallelepiped
depends only on the kinematics and the pose of the robot. However, its size and location
are influenced by the size of the end-effector and combined cable tensions σ1,σ2 and σ3. For
59
Torque Capacity
( )211 MM −σ
( )432 MM −σ
( )653 MM −σ
634221 MMM σσσ ++
oMx
Mz
My
Figure 4-4: The torque capacity parallelepipd of the end-effector.
example, if the end-effector is enlarged by a factor of γ (ri is changed to γri) then all Mi are
enlarged by the same factor and therefore, the parallelepiped is stretched from all three sides
by γ. Similarly, the spine force changes the size of the parallelepiped in all three dimensions.
However, any change in one of the combined cable tensions, which might be due to a change in
the external force on the end-effector, stretches or shrinks the parallelepiped in one direction
only. For instance, σ1 can stretch or shrink the parallelepiped in the direction ofM1−M2. These
will be used to adjust the size of the torque capacity in order to meet the torque requirement.
The torque requirement of the manipulator can be shown in a similar way to the force
requirement. The loci of torque vectors with magnitudes less than or equal toMmax is a sphere
SPm at the center of torque space with radius of Mmax as shown in Fig. 4-5. Therefore, the
problem is sizing and locating the torque capacity parallelepiped so that it includes the torque
sphere SPm. It should be noted that the effect of the weight of the payload on the torque
requirement is neglected in this analysis. Noting that the gravity force is in Z direction, it can
be assumed that the payload is usually positioned with respect to the end-effector such that the
weight vector almost passes through the center of the end-effector and hence, does not produce
a considerable moment.
In order for the parallelepiped to include the torque sphere SPm, each face of the paral-
lelepiped should be far enough from the center. In other words, all six faces should have a
60
TorqueCapacity
maxMradius =
SPm: The torquerequirement sphere
Face 1oMx
Mz
My
( )653 MM −σ
634221 MMM σσσ ++
( )211 MM −σ
( )432 MM −σ
Figure 4-5: The torque capacity and the required torque sphere SPm.
minimum distance of Mmax (the radius of SPm) from the center to prevent intersecting with
SPm. This introduces new constraints based upon the six faces of the parallelepiped which is
expressed in terms of σi’s and later will be combined with the force capacity design procedure.
Now, the distance between Face 1 (see Fig. 4-5) and the center is calculated and the
corresponding constraint is derived. This face is formed by two vectors: σ1(M1 −M2) and
σ2(M3 −M4). A uni-normal vector to this face can be formed which points outward the par-
allelepiped as:
t1 =(M1 −M2)× (M3 −M4)
k(M1 −M2)× (M3 −M4)k(4.25)
The inner product of t1 and the position vector of any point on Face 1 is the distance between the
face and center O. According to Fig. 4-5, the point with position vector σ1M2+σ2M4+σ3M6
belongs to Face 1 and thus, is used to find the distance which have to be larger than Mmax to
fulfil the torque requirement:
(σ1M2 + σ2M4 + σ3M6) · t1 ≥Mmax (4.26)
Note that M2 · t1, M4 · t1 and M6 · t1 only depend on the geometry of the manipulator and
61
the position of the end-effector. Therefore, Eq. (4.26) can be written as:
σ1a1 + σ2b1 + σ3c1 ≥ 1 (4.27)
where a1, b1 and c1 are three constants specific to face 1 and equal to M2 ·t1Mmax
, M4 ·t1Mmax
, M6 ·t1Mmax
,
respectively. Similar linear inequalities are found for other five faces of the parallelepiped. As
a result, these six linear inequalities represent the torque requirement conditions meaning that
any set of combined cable tensions (σ1, σ2 and σ3) which satisfies these inequalities guarantees
that a torque of magnitude Mmax can be applied by the end-effector in any arbitrary direction.
So far, the torque requirements on the end-effector have been expressed in terms of the
combined cable tensions: σ1, σ2 and σ3. Now, the remaining task is to combine these six
inequalities to those of force capacity in order to design the spine force which satisfies both
force and torque requirements. For this purpose, the torque capacity of the manipulator is
transformed to the force space and combined to the convex cone of the force capacity.
In the force space (shown in Fig. 4-3) consider a new coordinate system whose center is at
the apex of the force capacity and axes are along u1, u2 and u3. This coordinate system has
non-perpendicular axes and expresses each point of the force space in terms of the associated
combined cable forces σ1, σ2 and σ3. Now, it is clear that the left hand side of inequality (4.27)
defines a plane [53] in the force space determined in this non-perpendicular coordinate system.
Therefore, inequality (4.27) represents all points on one side of this plane (the side which does
not include the apex). The plane intersects the three axes at 1/a1, 1/b1 and 1/c1, respectively
whether or not the axes form a normal coordinate system. The result is shown in Fig. 4-6. It
should be remembered that each of the six faces of the parallelepiped generates one inequality
similar to (4.27) and hence, one plane in the force capacity. In total, there are six planes that
express the torque requirement of the manipulator in the force space.
It is seen that each of these six planes cut off part of the force capacity in order to ensure
that the remaining region complies with the torque requirements. To express these six planes
in O − FxFyFz coordinate system, the intersection of these planes and the edges of the force
capacity cone are used. For instance, the intersection of the plane shown in Fig. 4-6 with the
62
three edges of the cone are represented by the following position vectors:
h1 = Fs +1
a1u1
h2 = Fs +1
b1u2 (4.28)
h3 = Fs +1
c1u3
This plane is presented by a uni-normal vector s1 which can be found using the above points
h1, h2 and h3 as:
s1 =(h1 − h2)× (h1 − h3)k(h1 − h2)× (h1 − h3)k
(4.29)
=( 1a1 u1 −
1b1u2)× ( 1a1 u1 −
1c1u3)°°°( 1a1 u1 − 1
b1u2)× ( 1a1 u1 −
1c1u3)°°°
As it was mentioned before, only one side of this plane contains acceptable values of σi’s and
thus the force sphere SPf should be in the same side. This necessitates the distance of this
plane from the center of SPf to be at least Fmax :
s1 · (−Fwghtk+ h1) ≥ Fmax (4.30)
and using Eq. (4.28) we have:
s1 ·µ−Fwghtk+ fsw+
1
a1u1
¶= −Fwghts1 · k+fss1 · w+
1
a1s1 · u1 ≥ Fmax (4.31)
and the design equation for spine force associated with each of the six faces of the parallelepiped
become:
f i+3s =Fmax − 1
aisi · u1 + Fwghts1 · ksi · w
, i = 1, 2, ..., 6 (4.32)
Considering all the six planes found in this section together with the three planes of the force
capacity (see Eqs. (4.7) to (4.9)), the final design equation for fs that is the minimum required
spine force becomes:
fs = maxi=1,2,..9
(f is) (4.33)
63
Fx
Fy
Fz
O
maxFradius =
SPf
T1
1/b11/c1
1/a1
1131211 =++ cba σσσ
1h
1u
2u3u
w
F
ˆs
sf
=
kwghtF
3h
Figure 4-6: Torque requirements are presented as a set of planes in the force space.
It should be remembered that in all the procedure explained so far, it was assumed that the
pose of the robot is fixed and thus, the whole procedure must be repeated for different poses
and the maximum value of fs is chosen to make sure the force and torque requirements are
satisfied everywhere in the workspace. In other words, the workspace should be split into a
mesh and for each point of the mesh the spine force is calculated and the maximum value is
found for the final design of the spine.
In this section, the spine force was found to satisfy the torque requirements and to prevent
any cables from having negative tensions. Similar to the last section, in a real design, it may be
required to have a minimum positive tension as a safety margin on the cables. This margin was
assumed to be η and can be incorporated into the procedure using the same variable change as
employed in Eq. (4.10). As a result, the torque capacity given in Eq. (4.19) becomes:
M =©M¯M = (τ 01r1 + τ 02r2)× u1 + (τ 03r3 + τ 04r4)× u2 + (τ 05r5 + τ 06r6)× u3 (4.34)
τ 01,...,τ06 ≥ 0
ª64
where
τ 0i = τ i − η , i = 1, 2, ..., 6
therefore, the torque capacity expressed in terms of combined cables (Eq. (4.24)) becomes:
M =
(M
¯¯M = σ1M2 + σ2M4 + σ3M6 + η
Xi=1..6
Mi (4.35)
α1σ1(M1 −M2) + α2σ2(M3 −M4) + α3σ3(M5 −M6),
0 ≤ α1,α2,α3 ≤ 1
which indicates that the torque capacity parallelepiped is moved by vector ηPi=1..6
Mi and thus,
the same translation should be applied to all six faces. For instance, the inequality associated
with face1 becomes: Ãσ1M2 + σ2M4 + σ3M6 + η
Xi=1..6
Mi
!· t1 ≥Mmax (4.36)
and therefore, the coefficients of inequality (4.27) are redefined as:
a1 =M2 · t1
Mmax − ηPi=1..6Mi · t1
,
b1 =M4 · t1
Mmax − ηPi=1..6Mi · t1
,
c1 =M6 · t1
Mmax − ηPi=1..6Mi · t1
Universal Joint Versus Ball-and-Socket
In the above procedure, it is assumed that the spine is connected by two ball-and-socket joints.
It was mentioned in the last chapter that using two universal joints on the two ends of the spine
improves the rigidity of the robot and expands the torque capacity for twisting torque (twisting
axis is along Z according to Fig. 4-1). The universal joints prevent the end-effector from any
rotation about Z meaning that they generate a sufficiently large reaction torque along axis
Mz (see Fig. 4-4) to counteract any twist on the end-effector. Therefore, the torque capacity
parallelepiped of Fig. 4-4 is extended to infinity alongMz from both sides for an ideal universal
65
joint. As a result, the new torque capacity will be a prism whose cross-section is the projection
of the parallelepiped on the Mx −My plane shown in Fig. 4-7.
Similarly, the torque requirement sphere becomes a circle on Mx −My plane because any
torque components along Mz is already provided by the universal joint. As a result, the torque
requirement becomes a circle, Cm, centered at the center of coordinate system with radius of
Mmax. The geometry of the torque capacity and torque requirements is planar and therefore,
instead of the parallelepiped of the last section, the cross-section polygon of the prism should
be sized to include circle Cm.
In order to find this polygon, all the eight vertices of the parallelepiped should be projected
onMx−My plane. However only six of them are the polygon’s vertices. The polygon’s vertices
are found by determining the convex hull of the eight projected points. Once the polygon is
found, the rest of the procedure is quite the same except that instead of the faces, the edges of
the polygon should be located far enough from the center for not intersecting with the torque
requirement circle.
4.3 Maximum Motor Torques: Tmax
For a given synthesis of DeltaBot or BetaBot along with the spine force found in the last
section, the motor torque should be found such that the manipulator satisfy the force/torque
requirements i.e. it can produce forces/torques with maximum magnitude of Fmax/Tmax in
any arbitrary direction and at any point in the workspace. Similar to design procedure of the
spine force, we limit ourselves to a particular pose of the manipulator and then find the overall
required torque by scanning the whole workspace.
For a given pose of the manipulator, the required motor torque on each limb depends on the
combined cable tension (σ1,σ2,σ3) associated with that limb. In BetaBot, the torque is equal
to the combined cable tension times the radius of the pulley that winds the cables. In DeltaBot,
the angle between the rotating arms and the cables should be also considered. In both cases,
it is clear that the maximum required torque can be found if the maximum combined cable
66
o
Mx
Mz
My
o
Cross-section of thetorque capacity prism
Cm:The torquerequirement circle
(a)
(b)
r=Mmax
Mx My
Figure 4-7: a) The torque capacity prism which is made by the extension of the parallelepipidalong Mz axis b) The torque requirement circle.
67
tension is known for each limb. In other words we need to find:
σmaxi = maxFe∈SPf and Me∈SPm
(σi) i = 1, 2, 3 (4.37)
Let Fe and Me be the external force and torque, respectively which result in σmaxi . It can
be immediately understood that Me does not affect σmaxi because according to Eq. (4.24), any
external torque only changes the distribution of the tensions between the two cables of each
pair and does not change the summation of their tension. Therefore, Eq. (4.37) can be written
as:
σmaxi = maxFe∈SPf
(σi) i = 1, 2, 3 (4.38)
In order to find σmaxi , we should first find an expression for σi in terms of Fe. It is known
from the definition of force capacity in Eq. (4.3) that as long as −Fe belongs to the force
capacity, we have:
−Fe = σ1u1 + σ2u2 + σ3u3 +Fs (4.39)
In order to find σ1 from the above equation in terms of −Fe, it is sufficient to dot product both
sides of the equation with a vector which is normal to both u2 and u3. For this purpose, n2,
which is the uni-normal vector to the plane of u2 and u3, is used. The result of the dot product
is:
−Fe · n2 = (σ1u1 + σ2u2 + σ3u3 +Fs) · n2 (4.40)
which gives σ1 as:
σ1 =−Fe · n2u1 · n2
− Fs · n2u1 · n2
(4.41)
note that n2 is found similarly as in Eq. (4.6) to be:
n2 =u2 × u3ku2 × u3k
(4.42)
In Eq. (4.41), the second terms is constant for a fixed pose of the manipulator. Therefore, σ1 is
maximized when the first term is at its maximum. In the first term, the denominator i.e. u1 · n2is always negative because according to Fig. 4-2, u1, u2 and u3 form a left hand corner. As a
result, σ1 is maximized when Fe · n2 is at maximum. Remembering that n2 is a unit vector,
68
the maximum of Fe · n2 is equal to the magnitude of Fe which is Fmax. As a result, we have:
σmax1 =Fmaxu1 · n2
− Fs · n2u1 · n2
(4.43)
and σmax2 and σmax3 are found similarly.
As it was mentioned before, in a given pose, the required torque for ith motor is Ti and is
found from σmaxi (i = 1, 2, 3). Finally, it should be noted again that this procedure should be
repeated for every points in the workspace in order to find the overall maximum torque Tmax
required for each motor.
4.4 Maximum Cable tension: τmax
The maximum cable tension is another term which constitute the cost of a design. It is required
to find the maximum tension in the cables of a given synthesis of the manipulator with a known
spine force when the end-effector is subject to external load.
In the last section, the maximum combined cable tensions were found. It is clear that
combined cable tension σmaxi ’s are upper bounds for the individual cable tensions. Therefore,
the maximum combined cable tension σmax found by scanning the whole workspace is used for
the maximum cable tension τmax.
4.5 Maximum Error Gain: EGmax
The error gain, EG, indicates the ratio between the variation in the end-effector coordinates
and the active joint coordinates (actuators). This ratio is found using the Jacobian analysis of
the manipulators.
For a manipulator with n DoF and k dependent joint variables the Jacobian J is considered
as:
θk×1 = Jk×nxn×1
or δθ = Jδx (4.44)
69
where x and θ are the vectors of end-effector and joints coordinates, respectively. The kinemat-
ics of the manipulator contains k constraint equations which express the dependencies between
x and θ. Since the manipulator has n DoF, there should be n active joints to which the actua-
tors are connected. As a result, the rows associated to active joints can be extracted from Eq.
(4.44) and shown as:
δθa = Jn×nδx (4.45)
where θa is the vector of active joint coordinates and Jn×n is the rows of the Jacobian associated
with θa and is invertible as long as the manipulator is not kinematically singular and hence,
δx = J−1δθa (4.46)
Eq. (4.46) shows that a small positioning error δθa on the actuators’, produces a corre-
sponding positioning error δx on the end-effector through linear transformation J−1. As a
result and based on the definition of singular values of a square matrix, the maximum gain is
equal to the largest singular value of J−1:
maxδθa
µkδxkkδθak
¶= ς1 (4.47)
where ς1 is the largest singular value of J−1and since J
−1is square, we have:
ς1 = (γ1)1/2 (4.48)
where γ1 is the largest eigenvalue of³J−1´t
J−1. Similar to the previous sections, maximum
value of error gain EGmax should be found by scanning the whole workspace.
4.6 Optimal Design for DeltaBot and BetaBot
The optimum design of DeltaBot and BetaBot presented in this section is found by minimizing
the cost function over all possible syntheses of the manipulator. The cost function as a weighted
70
sum of cost parameters is:
Cost Function = 0.5fs + 0.2Tmax + 0.1τmax + 0.2EGmax
where fs, Tmax, τmax and EGmax are the normalized values of optimum spine force, maximum
actuator torque, maximum cable tension and maximum error gain, respectively. The weights in
the cost function are arbitrary and selected to reflect the relative importance of each element.
The maximum weight is given to the spine force because high spine force introduces manufac-
turing difficulties and also significantly influences the next two terms. The antagonistic forces
produced by the spine force increases the level of cable tensions and should be balanced by the
actuators all the time. In BetaBot, the maximum torque Tmax is directly found from maximum
cable tension τmax and therefore, these two terms in the cost function are merged together.
The design requirements for DeltaBot and BetaBot are considered as following:
1. The footprint of the manipulator: A cylinder with radius of 300mm and minimum height
of 400mm±20mm,
2. The geometrical workspace: A cylinder with radius of 200mm and height of 200mm,
3. The maximum magnitude of the force to be produced by the end-effector: Fmax = 40N
4. The maximum magnitude of the torque to be produce by the end-effector: Tmax = 1Nm
Items 3 and 4 are approximate values needed for the high-speed functionality of these ma-
nipulators. The main mission of DeltaBot and BetaBot is high-speed pick-and-place operations.
As a primary target, a cycle rate of 120 is considered for a payload of 1kg. Based on the total
length of the standard pick-and-place path which is 350mm and has to be traversed in 0.5s and
assuming a constant acceleration and deceleration, an average acceleration of 40m/s2 is needed
to be produced which results in a force of 40N. The gravity force is also considered which is
about 10N in a constant direction. Now, assuming one inch distance (which is the size range of
a gripper) between the centroid of the payload and the center of the end-effector, the maximum
required torque is about 1Nm.
71
4.6.1 Geometrical Synthesis of BetaBot and DeltaBot
In order to find the optimum design, all possible synthesis of the manipulators should be
generated and compared for their cost. It should be noted that in DeltaBot and BetaBot, the
size of the end-effector does not have any effects on the kinematics and hence is excluded from
the synthesis procedure. The end-effector in both DeltaBot and BetaBot is assumed to be a
triangle with edge length of 50mm. It is also assumed that in both robots, the three limbs are
distributed evenly on the base with angular distance of 120.
In BetaBot, the footprint uniquely determines the base triangle and the height determines
the minimum length of the spine. As a result, there is only one possible synthesis for a given
height and footprint. It was also mentioned in the last chapter that the workspace of BetaBot
is the half space above the base and therefore, it definitely satisfies the workspace requirements.
In DeltaBot, there are many possible choices for the arm and cable’s lengths when the foot-
print and height are given. The workspace of DeltaBot is complicated and it is not possible
to analytically find all possible solutions for the lengths of arms and cables. Therefore, conser-
vative ranges for these two lengths are estimated using simple geometry and, by searching in
these ranges, all acceptable synthesis are generated.
Arm and Cable’s Length in DeltaBot
In Fig. 4-8a, the geometry of one of the three limbs of DeltaBot is shown where the end-effector
is shrunk into a point. The lengths of the arm and the cables are a and b, respectively. The
footprint of the manipulator, fr, is given as well as the minimum height, h. The workspace is
also shown as a cylinder with radius of wr and height of wh.
Based on Fig. 4-8a, we have:
fr = fl + a (4.49)
where fr is given to be 300mm from which the size of the end-effector should be subtracted.
Using Eq. (4.49), the possible range for a is from 0 to fr. However, neither a nor fl can be zero
due to fabrication limits. As a result, a minimum of 50mm is considered for both a and fl and
hence, the range of a is from 50mm to fr − 50mm.
For the length of the cable, b, a minimum and maximum should be determined. In order to
72
O
N
flR
C
N C
RflO
(a)
Workspace Cylinder
Base
ArmWorkspace Cylnder
CablePPn
a
b
wr
H
fr
wh
H a
bwh
2wr
(b)
Figure 4-8: a) Range of the links’ lengths for DeltaBot, b) Projection of figure (a) on the planeof circle C.
73
find a minimum for the cable’s length, the farthest point of the workspace from circle C should
be considered because the cable should be long enough to connect this point to circle C. The
minimum for b cannot be smaller than wr, the radius of workspace cylinder. As a reason, note
that the plane of circle C cuts the workspace cylinder from the middle and hence, the farthest
point of the cylinder from this plane is wr away and hence, its distance from circle C will be
greater or equal to wr.
To find a maximum for b, consider an arbitrary point in the workspace and assume that e is
the maximum distance from that point to circle C. The minimum of e over the whole workspace
is the upper limit of b. It can be shown that point N, as seen in Fig. 4-8a,b is the one by which
e is minimized and thus determines the upper limit of b. For this purpose, consider an arbitrary
point P in the workspace. Assume that Pn is the normal projection of P on the plane of circle
C and hence, dp = PPn is the distance between P and the plane. In Fig. 4-8b a side view
of the manipulator is shown in which Pn and N can be easily seen. Let cp be the maximum
distance between Pn and circle C. Therefore, the maximum distance between P and circle C is
ep found as:
ep = (d2p + c
2p)1/2
and cp can be found from planar geometry to be:
cp = PnR+ a
it is evident that according to Fig. 4-8b, for point N both values of dn and cn are minimum
because dn is zero and N is the closest point to R. Therefore, the maximum value for b is found
to be NR+ a where NR can be determined as:
NR =¡h2 + (fr − a− wr)2
¢1/2As a summary, the following ranges are determined for the arm and cable lengths:
• Arm length: a = 50mm to fr − 50mm. However, due to manufacturing considerations,
the actual range for the arm is smaller.
• Cable length: b = wr to¡h2 + (fr − a−wr)2
¢1/2+ a.
74
Table 4.1: Specifications of the optimum design for BetaBotFootprint Height Spine Force Cable Force Motor Torque EG(mm) (mm) (N) (N) (Nm) (mm/Deg)
300 380 408N 279N 13.9 2.3
It should be noted that choosing a and b from the above ranges is necessary for DeltaBot to
cover the workspace but not sufficient. As a result, for any arbitrary values of a and b selected
from the above ranges, it should be numerically verified whether the manipulator covers the
whole workspace.
4.7 Design Results
The calculation of the design cost function including the optimum spine force, maximum cable
tension, motor torque and error gain wasimplemented for BetaBot and DeltaBot in MATLAB
along with the search routine which looks for the optimal design by searching among all possible
syntheses..
In BetaBot, as it was mentioned before, there is a unique synthesis for a given footprint
and height and therefore, the search space is relatively small. Changing the height of the
manipulator from 380mm to 420mm, it was realized that the shorter the height is the lower
the cost will be. However, the height of the manipulator cannot be shorter than a minimum
required for fabricating the spine cylinder. Therefore, the optimum design is found and the
parameters are shown in Table 4.1. The radius of the winch is assumed to be 50mm.
In order to give a more detailed view into the condition and performance of the optimum
design in the workspace, the optimum spine force, the maximum cable force and maximum
error gain are plotted for different points of the workspace and shown in Fig. 4-9 to 4-11.
The workspace was scanned on its circular cross section at six different heights: Z = 380mm,
420mm, 460mm, 500mm, 540mm and 580mm.
It is seen that all three parameters increase rapidly when the manipulator is far from the
central axis of the workspace (X,Y = 0). The implication is that the manipulator has better
and safer working condition in the central region. For instance, the optimum spine force for the
central region is much smaller than that of the outer region which means that the manipulator
75
-0.20
0.2
-0.20
0.2
300
350
400
X
Z = 380mm
Y
Spi
ne F
orce
(N)
-0.20
0.2
-0.20
0.2
300
350
400
Z = 420mm
-0.20
0.2
-0.20
0.2
300
350
400
Z = 460mm
-0.20
0.2
-0.20
0.2
300
350
400
Z = 500mm
-0.20
0.2
-0.20
0.2
300
350
400
Z = 540mm
-0.20
0.2
-0.20
0.2
300
350
400
Z = 580mm
Figure 4-9: The optimum spine force that satisfy the force/torque requirement of BetaBotshown in different locations in the workspace.
76
-0.20
0.2
-0.20
0.2200
250
X
Z = 380mm
Y
Cab
le F
orce
(N)
-0.20
0.2
-0.20
0.2200
250
Z = 420mm
-0.20
0.2
-0.20
0.2200
250
Z = 460mm
-0.20
0.2
-0.20
0.2200
250
Z = 500mm
-0.20
0.2
-0.20
0.2200
250
Z = 540mm
-0.20
0.2
-0.20
0.2200
250
Z = 580mm
Figure 4-10: The maximum cable force in BetaBot shown for different locations in theworkspace.
77
-0.20
0.2
-0.20
0.21.5
2
X
Z = 380mm
Y
EG
-0.20
0.2
-0.20
0.21.5
2
Z = 420mm
-0.20
0.2
-0.20
0.21.5
2
Z = 460mm
-0.20
0.2
-0.20
0.21.5
2
Z = 500mm
-0.20
0.2
-0.20
0.21.5
2
Z = 540mm
-0.20
0.2
-0.20
0.21.5
2
Z = 580mm
Figure 4-11: The maximum error gain in BetaBot.
78
Table 4.2: Specifications of DeltaBot designFootprint Height Arm Cable Spine Cable Motor EG(mm) (mm) (mm) (mm) Force (N) force (N) Torque (Nm) (mm/Deg)
300 410 150 508 363 230 27 6.1
can exceed the force torque requirements in the central region. It is also seen that by increasing
the height, the required spine force increases. However, the working condition becomes smoother
(less affected by the end-effector position). That is because the variation of the parameters is
more intensive when the manipulator is close to the base.
In DeltaBot, the search space has three dimensions: the height changes from 380mm to
420mm and arm length and cable length changes in the ranges found in Section 4.6.1. The
result for the optimum design of DeltaBot is given in Table 4.2
In Fig. 4-12 to 4-15, the optimum spine force, the maximum cable force, the maximum
required torque and the maximum error gain is plotted for six different sections of the workspace
at: Z = 410mm, 450mm, 490mm, 530mm, 570mm, 610mm. The behavior of these parameters
in DeltaBot is more complicated than those of BetaBot which is mostly because of the two-link
limbs. The spine force has less variation when the end-effector is at lower heights. Spine force
reaches its maximum when the end-effector is at the highest point in the workspace and on the
border. As a result, at these regions the payload of the manipulator should never exceeds the
limits otherwise, the rigidity of the manipulator will be lost. While the maximum cable force
shows a similar pattern to that of spine force, the maximum motor torque seems to be a little
different. The required torque shows lots of variations at lower heights in the workspace.
The common characteristic in all of the four parameters that constitute the cost function is
that they have lower values around the central region of the workspace and hence, the working
condition is better in this region.
4.8 DeltaBot Prototype
A prototype of DeltaBot has been fabricated at the University of Waterloo based on the opti-
mum design found in this chapter. The robot is shown in Fig. 4-16.
For the detailed mechanical design of this prototype, the reader is referred to [54]. The
79
-0.20
0.2
-0.20
0.2250
300
350
X
Z = 410mm
Y
Spi
ne F
orce
(N)
-0.20
0.2
-0.20
0.2250
300
350
Z = 450mm
-0.20
0.2
-0.20
0.2250
300
350
Z = 490mm
-0.20
0.2
-0.20
0.2250
300
350
Z = 530mm
-0.20
0.2
-0.20
0.2250
300
350
Z = 570mm
-0.20
0.2
-0.20
0.2250
300
350
Z = 610mm
Figure 4-12: The optimum spine force that satisfy the force/torque requirement of DeltaBotshown in different locations in the workspace.
80
-0.20
0.2
-0.20
0.2160180
200220
X
Z = 410mm
Y
Cab
le F
orce
(N)
-0.20
0.2
-0.20
0.2160180
200220
Z = 450mm
-0.20
0.2
-0.20
0.2160180
200220
Z = 490mm
-0.20
0.2
-0.20
0.2160180
200220
Z = 530mm
-0.20
0.2
-0.20
0.2160180200220
Z = 570mm
-0.20
0.2
-0.20
0.2160180200220
Z = 610mm
Figure 4-13: The maximum cable force in DeltaBot shown for different locations in theworkspace.
81
-0.20
0.2
-0.20
0.2
15
20
25
X
Z = 410mm
Y
Mot
or T
orqu
e (N
m)
-0.20
0.2
-0.20
0.2
15
20
25
Z = 450mm
-0.20
0.2
-0.20
0.2
15
20
25
Z = 490mm
-0.20
0.2
-0.20
0.2
15
20
25
Z = 530mm
-0.20
0.2
-0.20
0.2
15
20
25
Z = 570mm
-0.20
0.2
-0.20
0.2
15
20
25
Z = 610mm
Figure 4-14: The required motor torque in DeltaBot shown over the workspace.
82
-0.20
0.2
-0.20
0.2
4
6
X
Z = 410mm
Y
EG
(mm
/Deg
)
-0.20
0.2
-0.20
0.2
4
6
Z = 450mm
-0.20
0.2
-0.20
0.2
4
6
Z = 490mm
-0.20
0.2
-0.20
0.2
4
6
Z = 530mm
-0.20
0.2
-0.20
0.2
4
6
Z = 570mm
-0.20
0.2
-0.20
0.2
4
6
Z = 610mm
Figure 4-15: The maximum error gain in DeltaBot.
83
End-effector
Spine
Cables
Base
Rotating ArmsGearbox
Motors
Figure 4-16: A prototype of DeltaBot developed at the University of Waterloo.
84
main components used in the prototype are as follows:
1. Actuators and Control System: Three 690W brushless servo motors and amplifiers
(Kollmorgen) are used on the prototype which provide a continuous torque of 2.2 Nm at
3000 rpm. A 12 : 1 right angle planetary gear box was used with each motor to increase
the torque to the required amount. The motors are controlled using an industrial motion
control system (PMAC Lite from Delta Tau Systems Inc.) with PID and feed forward
controllers.
2. Spine: A single acting pneumatic cylinder was chosen for the spine. With a bore size
of 32mm, the cylinder provides the necessary spine force at 5.8 bar. The cylinder is
connected to both base and end-effector by universal joints. A non-rotating shaft is also
used to enforce a kinematic constraint on the rotation of end-effector about Z axis in
order to improve the torque capacity of the manipulator. During the motion of the robot,
the cylinder extends and retracts, causing a fluctuation in the pressure. The pressure
fluctuation has been minimized by connecting an appropriate accumulator to the cylinder.
3. Cables: Based upon the requirements of the system, a steel cable is selected with diame-
ter of 1.19mm. The cable is a low stretch with a 7×19 construction and a Teflon coating.
These cables provide a safety factor of 7 against failure.
To evaluate the positioning accuracy and the moving speed, a series of tests based on ISO
9283 were performed on this prototype. The results showed that the robot can reach a maximum
speed of 4.1 m/s with accelerations of up to 12.7g (124.5 m/s2). The robot can perform up to
120 cycles of pick and place per minute. The positioning has a repeatability of 0.08mm. The
positioning accuracy is a function of the payload and changes from 0.25mm for no load situation
to 0.60 mm for a payload of 400g. More details on the procedure and results of these tests can
be seen in [55]
4.9 Conclusion
In this chapter, the design problem of reduced DoF cable-based manipulators with emphasis
on DeltaBot and BetaBot were studied. In these manipulators the force and torque that the
85
manipulator can apply are limited due to the limited spine force. As a result, the spine force
should be determined during the design procedure such that the force/torque capacity of the
manipulator satisfy the force/torque requirements. An approach was proposed to determine
the optimum spine force such that the end-effector can produce a minimum force and torque
in any direction at any point in the workspace.
The maximum cable tension and maximum required actuators’ torque were also calculated
in order to evaluate the cost of a design. The tension in cables accelerate the fatigue and high
actuator torque directly affect the size of the motors and increase the cost.
A measure of dexterity was proposed to evaluate the positioning accuracy of the manipula-
tor. This parameter is called error gain and expresses the ratio between the positioning error
at the end-effector and the error of the actuators. This parameter shows to what extent the
error of positioning control system influences the positioning accuracy.
Optimum designs for BetaBot and DeltaBot were found for a given footprint and force/torque
capacity. In order for the manipulator to apply a force 40N and torque of 1Nm in any direction,
a minimum spine force of 408N in BetaBot and 363N in DeltaBot is needed. BetaBot has also
higher tension in cables compared to DeltaBot but it provides a better positioning accuracy
when the same actuation system is used.
Based on these results, a prototype of DeltaBot fabricated at the University of Waterloo.
This prototype can perform up to 120 cycles of pick and place per minute. The preliminary
tests on the positioning performance of this robot shows it has a repeatability of 0.08mm and
accuracy of 0.25− 0.60mm for different payloads.
86
Chapter 5
Path Planning of High-Speed
Cable-based Robots
5.1 Introduction
The motion programming of a robotic manipulator consists of all the tasks needed to generate
the final control signal that drives the robot from an initial pose to a final one. The motion may
require certain quality indices such as speed, accuracy, smoothness, etc. It also depends on the
constraints and limitations of the manipulator’s geometry, actuation systems and environment
which complicate the motion programing problem. The schematic block diagram shown in
Fig. 5-1 illustrates a typical motion programmer. In this diagram, motion programming is
divided into four main subproblems. Task planner generates a set of points which represent
a collision free path in the workspace of the robot. In Geometric path generator, these points
are converted to a smooth parametrized function which determines the path of the end-effector
in the workspace. The third block, Trajectory generator, generates the joints’ positions as
functions of time which are sent to Path/Trajectory tracker. This block is the controller of the
robot’s actuators to make them follow the trajectory.
For high speed robotic applications, minimum time is the main goal for the design of the
motion programming algorithm. A global minimization of motion time ends up in solving a
sophisticated optimization problem because all of the blocks shown in Fig. 5-1 are interrelated
and most of them nonlinear. Therefore, these blocks are assumed to be independent in most of
87
Task Planner Geometric PathGenerator
TrajectoryGenerator
Path/TrajectoryTrackerRobot
Sensors
Required Task
An ordered setof points in
Cartesian space(control points)
Parameterized path inthe joint space
Time history ofposition, velocity and
acceleration
(1) (2) (3)
(4)
(Path planning algorithm)
Figure 5-1: The block diagram of the motion programming of a robotic manipulator.
the researches for the sake of simplicity.
In this chapter, the second and third blocks of Fig. 5-1 which possess the most influence
on the performance and speed of the robot are studied. As for the first block, Task planner,
there is no difference between cable-based and rigid link manipulators since it only deals with
the required task that has to be done. On the contrary, the generation of path and trajectory
(the path planning algorithm) for cable-based manipulators are more complicated that those
of rigid link manipulators since there is one more constraint on the motion of the robot which
arises from the fact that cables’ tension should be always maintained. The goal of this chapter
is to address this problem by proposing a method to include the cable tension condition in the
path planning algorithm.
As for the path/trajectory tracker or the controller of the robot, this research relies on
a commercial motion controller which is widely used in the robotic industry. The motion
controller consists of a closed loop PID controller and a Notch filter.
88
5.2 Background
Time-optimal path planning uses all the capacities of a robot to perform a task as fast as
possible and hence, has a major impact on the productivity of the robot. As it was shown in
Fig. 5-1, the path planning algorithm receives some path descriptors such as the end points
and some intermediate points. It generates the time history of position and velocity of the
robot’s actuators which is called trajectory in this work. This task consists of: 1) determination
of the geometrical path which avoids any collision, and 2) the time history of the actuators’
position. These two stages are completely coupled if the total elapsed time is to be minimized.
Such an optimization problem in its general form is too difficult to solve and hence, there is no
solution available in the literature. However, there are several attempts to provide approximate
solutions to this problem by either simplifying the problem or separating the geometrical path
generation from the trajectory generation.
One of the most early works on this problem was done by Kahn and Roth [56] who found
a near-minimum-time solution. They used linearized equations of motion and constant limits
for the actuators’ torque. They also relaxed the geometrical path except for the two endpoints
which is valid only if the workspace is obstacle free. The constraints they used are too restrictive
in most real applications. Shin and McKay [57] applied Riemannian geometry to find a near-
minimum-time path for the cases in which the collision avoidance is not an issue. In other works,
the geometrical path is either given or determined by a set of known curves such as straight
lines, circle arcs and polynomials. The time-optimal trajectory is then found by minimizing the
motion time through numerical optimization procedures.
Pontryagin [58] showed that at any point of a time-optimal trajectory, at least one of the
actuators exerts maximum or minimum torque (bang-bang control). Niv and Auslander [59]
used a parameter optimization scheme on switching points at which actuators switch from
maximum torque to minimum or vise versa. In this technique, the computational time is
usually too long for most real applications.
A turning point on this problem was the algorithm reported by Bobrow et al [60] and Shin
and McKay [61] almost at the same time. They proposed an algorithm to find the time-optimal
trajectory for a given geometrical path. Their technique can handle any constraints on the
actuators as long as expressed in terms of the state variables of the manipulator. Their technique
89
has had many amendments in the literature. Shin and McKay [62] showed how uncertainties in
payload can be represented as new constraints and be incorporated into the algorithm. They
also generalized their algorithm [63] to a dynamic programing method to find the optimal
trajectory that minimizes any arbitrary cost function. Shiller and Dubowsky [64] combined the
same technique with a parameter optimization scheme to optimize the geometrical path. They
used a parametric piecewise polynomial presentation of the geometrical path however, it is not
mentioned how much time it needs to optimize the path and trajectory. Constantinescu and
Croft [65] considered some limits on the torque rate in order to find a smooth time-optimal
trajectory.
One of the weaknesses of the time-optimal trajectory is that it relies on a dynamic model of
the robot and actuators. Since, the actuators are forced to work at their limits of saturation, any
uncertainties in the dynamic model may result in the saturation of the actuators and therefore,
deviation from the geometrical path. A feedback control law was proposed by Dahl and Nielsen
[66] to be used with this technique. This control algorithm is used in the trajectory tracking
module and relaxes the actuators as soon as they reach the saturation limit.
In the remaining of this chapter, an efficient approach to calculate the geometrical path is
first presented. Then, a time-optimal trajectory planning technique is developed for cable-based
manipulators to accommodate for the constraint that cables can only pull. This technique is
applicable to any cable-based manipulator and is not limited to the manipulators introduced in
this thesis. A non-optimal trajectory planning technique is also proposed which can be applied
to real time path planning. This technique is computationally more efficient however, requires
more time to perform the same task. Both methods are applied to DeltaBot and the results
are compared.
5.3 Geometrical Path Generation
The geometrical path should be generated based on some given control points. The control
points include the two end points of the path and some intermediate ones to control the overall
shape of the path to avoid collisions with obstacles in the workspace. It is assumed that the
control points for a path are given and the goal is to find a smooth geometrical path with the
90
following assumptions:
1. The importance of the control points can be determined independently by the user. For
instance, the path can be forced to pass through some of the control points and relaxed
at the others to have a more smooth shape.
2. The degree of continuity of the path can be set by the user up to any desired degree. In
most applications, a continuous curve up to the second degree is satisfactory.
In order to meet the two above-mentioned requirements and also have a numerically efficient
algorithm for path generation, B-spline interpolation method is used. B-spline is a piecewise
polynomial curve with any required order of continuity. The behavior of B-spline is determined
by its control points as well as a set of non decreasing real numbers called knot values. In the
following, the main properties of B-splines are reviewed and used to develop the path planning
algorithm.
5.3.1 Definition and properties of B-splines
B-spline is a piecewise polynomial function used for generating curves and data interpolation.
B-spline is geometrically flexible and provides a good control on the shape of the curve. The
generation of such curves is possible by some numerically efficient algorithms that best suit any
real-time applications. For a detailed introduction to B-splines, the reader is referred to [67].
B-spline is defined as a weighted summation of so called control points:
C(ζ) =u+1Xi=1
Ni,v(ζ)Ci , ζmin ≤ ζ < ζmax (5.1)
where Ci’s are control points: i = 1, 2, ..., u+ 1 and Ni,v(ζ) are polynomials of order v (degree
v − 1) used as basis functions. The degree of the basis functions should be between 1 and u.
B-spline does not pass through the control points. However, it has the nice property of being
contained by the convex hull formed by neighboring control points. Based on this property, as
long as the convex hull of the control points does not include any obstacle, the path is collision
free which is very important for robotic applications.
91
The basis functions, Ni,v(ζ), are defined recursively as:
Ni,1 =
⎧⎨⎩ 1, ζi ≤ ζ < ζi+1
0, otherwise(5.2)
Ni,v =ζ − ζi
ζi+v−1 − ζiNi,v−1(ζ) +
ζi+v − ζ
ζi+v − ζi+1Ni+1,v−1(ζ) (5.3)
where (ζ1, ζ2, ..., ζv+(u+1)) is the knot vector and determines the values of ζ at which the pieces
of the curve are joint together. It is required that:
ζi ≤ ζi+1, i = 1, 2, ..., u+ v + 1
It is understood from Eq. (5.3) that basis functions depend on the relative values of ζi’s. In
other words, scaling or translation of ζi’s do not change the curve shape. A sample B-spline
is shown in Fig. 5-2a which has 8 control points (u = 7) and 12 knots (v = 4) so that the
degree of each piece of the curve is 3 (cubic polynomial). The knot vector for this curve is
(0, 0, 0, 0, 0.2, 0.4, 0.6, 0.8, 1, 1, 1, 1). Such a B-spline is called clamped because it passes through
the first and last control points. This is done by repeating the first and last knots in the knot
vector.
The B-spline of Fig. 5-2a is also called uniform because the knot values are distributed
evenly except for the first and last knots. In a non-uniform B-spline, the knot values may
have any arbitrary distribution. It should be noted that, the curve parameter, ζ, in B-splines
has no particular geometric meaning. In addition, the relation between the distribution of the
knot values and the shape of the curve is not generally easy to understand. However, it will
be explained later how the knot vector can be adjusted so that the curve parameter become a
good approximation of the curve’s arc-length.
The calculation of the basis functions as given in Eq. (5.2) is the most time consuming
part in calculation of a B-spline. The calculation of basis function Ni,v(ζ) will be numerically
expensive if the recursive formula of Eq. (5.2) is directly used. Fortunately, there are efficient
algorithms such as one explained in [67] for fast calculation of the basis functions. In this
algorithm, the number of basic arithmetic operations is proportional to v2 and does not depend
on the number of the control points. For instance, in a cubic B-spline, the calculation time for
92
(a) (b)
Control pointsKnots
Control pointsKnots
Knots 1,2,3,4Control point 1
Control point 2
Control point 3
Knots 9,10,11,12Control point 8
Knot 5
Figure 5-2: A sample B-spline: a) A uniform clamped B-spline b) The same B-spline but thethird control point has a multiplicity of 2.
each point on the B-spline is proportional to 42 = 16.
Some of the geometrical properties of B-splines that are relevant to path planning applica-
tions are listed here without proof:
1. The degree of the polynomial pieces that construct the curve can be selected by the user.
However, the desired polynomial degree has to be at least 1 (linear) and can be no more
than u.
2. A B-spline is Cv−1−α-continuous across a knot which has a multiplicity of α. At a non-
repeating knot, the curve is Cv−2. For instance, if the B-spline is of degree 3 (v = 4) then
across a double knot, the curve and its first derivative are continuous.
3. A B-spline can be forced to pass through a control point if that control point is repeated
v− 1 times. Using this property, one can express the importance of each control point in
terms of its multiplicity. By repeating a control point, the curve moves closer and closer
to that point without compromising the continuity however, the curve shape becomes
sharper at that point. This is shown in Fig. 5-2b. In this figure, the third control point
is repeated twice.
93
4. The control points of a B-spline locally affect the shape of the curve i.e. changing the
position of control point Ci only affects the curve on interval [ζi, ζi+v). This can be seen
in Fig. 5-2b where repeating the third control point does not make any change on the
rest of the curve.
5. Each piece of a B-spline is contained in the convex hull of its neighboring control points.
More specifically, the piece of the B-spline corresponding to the knot span [ζi, ζi+1)
is inside the convex hull of Ci−v+1,Ci−v+2, ...,Ci. This is resulted from the fact that
for such a knot span, according to Eq. (5.2), the only non-zero basis functions are
Ni−v+1,v, Ni−v+2,v, ..., Ni,v.
5.3.2 Path Generation by B-spline
Based on the above mentioned properties, one can tailor the geometrical path according to
the required application. For DeltaBot, which is designed for pick-and-place operations, the
geometrical path has a typical shape. It starts with a lift-off which is to pick up the object.
Then, there is a change of direction from vertical motion to horizontal which is followed by a
straight line up to the destination point. It follows then by a set-down to drop the object. As
a result, the control points for such a path can be automatically generated assuming there is
no obstacle along the path.
In Fig. 5-3, a set of control points and the corresponding B-spline are shown. The degree of
the polynomial is 3 and hence a cubic spline is obtained which satisfies the continuity of position,
velocity and acceleration (a C2 curve) across the knots. Control points 2 and 3 coincide as well
as control points 8 and 9. As a result, the vertical motions of the lift-off and set-down are more
precise. The length of this vertical motion depends on the application however, it is usually
around half inch. In the same figure, r is approximately equal to the radius of the path however,
it is known that a polynomial curve can never have an exact circular shape. The longest portion
of the path is between points 5 and 6. If there is any obstacle between these two points then the
path needs to be adjusted with extra control points in order to avoid any collision otherwise,
this part is left without any extra control points.
As it was mentioned before, the way knot values change the shape of a B-spline is compli-
cated and therefore, usually a uniform knot vector is used. The uniformity of the knot vector
94
1
2,3
45 6
7
8,9
10
vertical move for liftoff and set down
r
Figure 5-3: Typical shape of a pick-and-place path generated by 10 control points and a cubicB-spline.
further simplifies the calculation of the B-spline. In this case, assuming there are u+ 1 control
points and a polynomial of degree v − 1, the knot vector for a clamped B-spline becomes:
µ0(v),
1
u− v + 2 ,2
u− v + 2 , ...,u− v + 1u− v + 2 , 1
(v)
¶(5.4)
where 0(v) is v zeros and similarly, 1(v) stands for v ones.
For trajectory planning, it is required to have the geometrical path parameterized by the
arc length i.e. ζ is the length of the curve. Farouki [68] proved that there is no exact arc-
length parametrization for polynomial curves but there are some approximations. One of these
approximations is obtained by using chord length method for choosing the knot values. In
this method, the knot values are proportional to the length of the segments connecting the
successive control points. Let li be the length of the segment between points Ci and Ci+1. As
a result, the knot vector becomes:⎛⎝0(v), 1v
vXj=1
lj ,1
v
v+1Xj=2
lj , ...,1
v
v+u−vXj=u−v+1
lj , 1(v)
⎞⎠ (5.5)
Although the chord length method should generate a knot value whose corresponding B-
95
spline is close to an arc-length parametrization, this was revealed not to be so correct at least
for typical paths used in pick-and-place operations. Trying both uniform distribution and
chord-length method for knot vector generation, resulted in two B-splines shown in Fig. 5-4.
The shape of the two B-splines are almost the same, however, the path parameter is closer
to the arc-length when the uniform knot vector is used. The mean of absolute error are 11%
and 14% for uniformly distributed and chord-length knot vector, respectively. This error was
seen to even increase upon the increase of the width of the path (farther end points). For a
time-optimal trajectory planning, none of the above mentioned parameterization are sufficiently
accurate. Therefore, to determine the path function, C, as a function of the arc-length s, the
B-spline parameter ζ should be defined as a function of s. This was done by a table look up
technique which numerically determines ζ(s). In our second approach for trajectory planning,
the computational time is the main criterion. Therefore, the uniform knot vector which results
in a path parameterization closer to the arc-length parameterization was used.
5.4 Time-Optimal Trajectory Planning in Cable-based Manip-
ulators
In a time-optimal trajectory planning problem, the geometric path is known as well as the
dynamic model of the manipulator and all the limits on the torque and velocity of the actuators.
The goal is to find the optimal trajectory (time history of position, velocity and acceleration of
actuator joints) in which the motion time is minimum. In this section, the algorithm by Bobrow
et al [60] and Shin and McKay [61] is formulated for parallel manipulators and enhanced to
include the cable tension constraints in cable-based manipulators.
The core idea of this algorithm is to reduce the state space dimension of the robot down to
two: position and velocity of the end-effector on the prescribed path. The dynamic equations of
a manipulator with n DoF whose end-effector must remain on a given geometric path is a second
order differential equation similar to a one DoF system. All other constraints such as actuators’
limits can be expressed in terms of the state variables. As a result, some regions in the phase
plane become inadmissible regions i.e. the manipulator cannot be in those regions because
of the actuators’ constraints. The minimization problem will become finding a trajectory in
96
0 0.2 0.4 0.6 0.8 10
0.10.20.30.40.50.60.70.80.9
1
0 0.2 0.4 0.6 0.8 10
0.10.20.30.40.50.60.70.80.9
1
S S
ξ ξ
Path shape (uniformly distributed knot) Path shape (chord length method)
Arc-length versus path papramer (normalized) Arc-length versus path papramer (normalized)
MAE=11% MAE=14%
Figure 5-4: The effect of the knot vector on the path The B-spline curves found by uniformlydistributed knot values and chord-length knot values. The mean of absolute error between theknot values and the arc-length values are also shown.
97
the phase plane which does not cross the inadmissible region and its corresponding time is
minimum.
In parallel manipulators, the dynamics is usually obtained as a combination of differential
and algebraic equations resulted from closed kinematic chains. Using the following terminology,
the equations of motion for an n DoF manipulator can be formulated using Lagrange’s method:
• x : Vector of end-effector coordinates n× 1
• θ : Vector of generalized joint coordinates k × 1
• q = (θt,xt)t: Vector of generalized coordinates (k + n)× 1
• T : Vector of generalized forces (k + n)× 1
• I : Inertia matrix
• λ : Vector of Lagrange’s multipliers k × 1
• ξ : Vector of kinematic constraint equations k × 1
• L : Lagrangian
d
dt
µ∂L
∂q
¶− ∂L
∂q= Iq+ h (q,q) = T+ ξtqλ (5.6)
ξ (q) = ξ (θ,x) = 0 (5.7)
where ξq =∂ξ∂q is the Jacobian of the constraint equations and invertible if the constraint equa-
tions are independent. It is known that the generalized force vector accounts for all externally
applied forces such as those of the actuators. It is assumed here that each actuator is connected
to a joint for which a generalized coordinate is defined. These joints are called active joints and
their associated generalized coordinates are shown with θ1, θ2, ..., θn, the first n components of
vector θ.
The geometric path for which the time-optimal trajectory is to be found is assumed to be
parameterized by the arc length of the path, s. Therefore, x, the coordinate vector of the
98
end-effector, is expressed in terms of s :
x = x(s) (5.8)
This parametrization is used to replace q, q in Eq. (5.6) by functions of s and its derivatives to
obtain a second order system of equations with state variables s and s. For this purpose, the
derivatives of the constraint equations are used. The first derivative of Eq. (5.7) gives:
ξxx+ ξθθ = 0 (5.9)
and therefore:
θ = ϕ(θ,x)k×nx (5.10)
ϕ(θ,x)k×n = −ξ−1θ ξx (5.11)
Taking time derivatives of Eq. (5.8) yields:
x = x0s (5.12)
where x0= dx
ds . Substituting Eq. (5.12) into (5.10) results in:
θ = ϕ(θ,x)x0s (5.13)
and therefore, q in Eq. (5.6) is found as:
q =
⎡⎣ ϕx0
x0
⎤⎦ s (5.14)
The second derivative of q is found similarly by taking the time derivative of Eqs. (5.12,5.13):
q =
⎡⎣ ϕx0
x0
⎤⎦ s+⎡⎣ ϕxx
0x0+ϕθϕx
0x0+ϕx
00
x00
⎤⎦ s2 (5.15)
99
By Substituting Eq. (5.14,5.15) in (5.6), the equations of motion become:
I
⎡⎣ ϕx0
x0
⎤⎦ s+M⎡⎣ ϕxx
0x0+ϕθϕx
0x0+ϕx
00
x00
⎤⎦ s2 + h(θ,s, s) = T+ ξtqλ (5.16)
ξ (θ,x(s)) = 0
Note that in Eq. (5.16), x is given as a functions of s (see Eq. (5.8)) however, ϕ,ϕx, and ϕθ
are still functions of θ for which there is no explicit expression in terms of s. As a result the
constrain equations ξ (θ,x(s)) = 0 should be still considered and solved simultaneously with
the differential equations.
As mentioned earlier, the first n coordinates in q are those of active joints to which the
actuators are connected. As a result, T represents the actuators generalized force in the first
n rows of Eq. (5.16) and in the next k rows, it contains the external forces applied to the
manipulator. Based on this, Eq. (5.16) can be split into two sets from which the first n
equations correspond to active joint coordinates. This is shown in the following:
⎡⎣ In×1I∗k×1
⎤⎦ s+⎡⎣ Hn×1(θ,s, s)
H∗k×1(θ,s, s)
⎤⎦ =
⎡⎣ Tn×1T∗k×1
⎤⎦+⎡⎣ ξn×k
ξ∗k×k
⎤⎦λk×1 (5.17)
ξk×1 (θ,x(s)) = 0 (5.18)
where :
ξn×k =
∙∂ξj∂qi
¸n×k
i = 1, 2, ...n and j = 1, 2, ..., k (5.19)
ξ∗k×k =
∙∂ξj∂qi
¸k×k
i = n+ 1, n+ 2, ...n+ k and j = 1, 2, ..., k (5.20)
and I, I∗, H, andH∗ are found directly from Eq. (5.16) and depend on θ as well as s and s. Tn×1
is the vector of actuators generalized forces and T∗k×1 is other externally applied generalized
forces.
Now, in order to clearly express the relation between the actuator’s force and the path
variable s, Eq. (5.17) can be simplified as follows. From the lower part of Eq. (5.17), Lagrange’s
multipliers can be found as:
100
λ = ξ∗−1(I∗s+H∗(θ,s, s)−T∗) (5.21)
and by substituting λ into the top part of the same equation, we obtain:
³I− ξξ∗
−1I∗´s+ H(θ,s, s)− ξξ∗
−1H∗(θ,s, s) + ξξ
∗−1T∗ = T (5.22)
ξk×1 (θ,x(s)) = 0
For simplicity, Eq. (5.22) can be shown as:
ais+ bi + ci = ti i = 1, 2, ..., n. (5.23)
ξk×1 (θ,x(s)) = 0
where ti is the generalized force (torque or force) of the ith actuator and ai, bi, ci are scalars
found from Eq. (5.22) as:
I− ξξ∗−1I∗ = (a1, a2, ..., an)
t
H(θ,s, s)− ξξ∗−1H∗(θ,s, s) = (b1, b2, ..., bn)
t
ξξ∗−1T∗ = (c1, c2, ..., cn)
t
which shows that ai, bi, ci depend on s, s, and θ, and therefore, the constraint equations of the
system, ξk×1 (θ,x(s)) = 0, should be also considered in the equations of the motion.
5.4.1 Torque Limit Constraint
The torque limit of each actuator can be considered as a function of position and velocity of
that joint and therefore ti, the torque of each actuator, can be written as:
timin(qi, qi) ≤ ti ≤ timax(qi, qi) i = 1, 2, ..., n (5.24)
101
where qi, qi are given in terms of s and s as explained before. In a trajectory, the torque of each
actuator should never exceed the limits. Using Eq. (5.23), Eq. (5.24) becomes:
timin(s, s) ≤ ais+ bi + ci ≤ timax(s, s) i = 1, 2, ..., n (5.25)
which results in:
LBi(s, s) ≤ s ≤ UBi(s, s) i = 1, 2, ..., n (5.26)
LBi(s, s) =
⎧⎨⎩timin (s,s)−bi−ci
aiif ai ≥ 0
timax(s,s)−bi−ciai
if ai < 0(5.27)
UBi(s, s) =
⎧⎨⎩timax(s,s)−bi−ci
aiif ai ≥ 0
timin (s,s)−bi−ciai
if ai < 0(5.28)
It is known that the conditions shown in Eq. (5.26) should hold for all actuators simultaneously.
Therefore, for given s and s, an overall lower bound and upper bound for s are found to be:
MLB(s, s) = maxi=1,..,n
(LBi) (5.29)
MUB(s, s) = mini=1,..,n
(UBi) (5.30)
where MLB(s, s) and MUB(s, s) are the limits of path acceleration resulted from the motor
torque limits:
MLB(s, s) ≤ s ≤MUB(s, s) (5.31)
It should be noted that although LBi ≤ UBi for i = 1, 2, ..., n, we may have MLB > MUB for
some s and s which implies that there is no acceptable acceleration for such a situation.
The actuator torque constraint can be presented in the phase plane (s− s) as a limit on the
slope of the trajectory. For this purpose, s is rewritten as:
s =ds
dt=ds
ds
ds
dt=ds
dss (5.32)
where dsds is the slope of the trajectory on the phase plane. Assuming that the end-effector
always moves in one direction along the path (s > 0) and using Eqs. (5.32) and (5.26)-(5.30),
102
the torque constraint becomes:MLB
s≤ dsds≤ MUB
s(5.33)
The points of the phase plane at which MLBs > MUB
s form a region called inadmissible region.
This region should be avoided when planning a trajectory for the robot.
5.4.2 Velocity Limit Constraint
Industrial actuators such as DC motors have a maximum speed which cannot exceed under
any condition. This limit is also expressed in terms of s and s and incorporated into the phase
plane of the system.
From Eqs. (5.8) and (5.13), θ is given in terms of s and s :
θ = ϕk×n(s)x0s (5.34)
Remembering that the first n joint coordinates are active coordinates connected to actuators,
the ith actuator velocity becomes:
qi = ϕi(s)x0s i = 1, 2, ..., n (5.35)
where ϕi is the ith row of ϕ. Assuming the maximum velocity limit of the ith actuator, qi, is
Vmaxi, the following conditions should hold:
s ≤ 1¯ϕi(s)x
0¯Vmaxi , i = 1, 2, ..., n (5.36)
or:
s ≤ mini=1...n
⎛⎝ Vmaxi¯ϕi(s)x
0¯⎞⎠ (5.37)
which determines the maximum acceptable velocity as a function of s and hence, forms a border
in the phase plane beyond which the speed of at least one of the actuators is out of limit.
103
5.4.3 Cable Tension Constraint
The last constraint on the time-optimal trajectory which is specific to cable-based manipulators
is the cable tension which must be maintained positive (tensile). Cable tensions which are
internal forces of the manipulator are found from the dynamic model of the system using the
Lagrange’s multipliers.
In general, cables in a cable-based manipulator are either of constant length or their lengths
change by actuated winches during the motion. It is evident that for a cable with changing
length, the tension is directly found from the torque or force exerted by the corresponding
actuator and hence, the tension is available from Eq. (5.23). Applying the positiveness of the
tension as a constraint results in another inequality similar to Inequality (5.25). It remains to
find the tension of the cables whose lengths are fixed.
Let mc be the number of cables with fixed lengths in a general cable-based parallel manip-
ulator. In order to express the tension of the cables in terms of s, s and s, we consider them as
linear actuators such as cylinders whose lengths are shown by variables l1, l2, ..., lmc . The force
of these actuators are so that their length remain constant and equal to the real length of the
cables. As a result, the manipulator is considered with mc extra degrees of freedom due to the
new mc coordinates: l1, l2, ..., lmc . The new generalized coordinate vector becomes:
q← (θt,xt, l1, l2, ..., lmc)t (5.38)
Note that, the Lagrangian and constraint equations of the manipulator remain unchanged after
this assumption. The only difference is that the cable lengths that were parameters of the system
are now treated as coordinate variables. As a result, the equations of the system include the
previous ones shown in Eq. (5.17) as well as the following new equations emerged from the new
coordinates:d
dt
µ∂L
∂ li
¶− ∂L
∂li= τ i +
kXj=1
λj∂ξj∂li
i = 1, 2, ...,mc (5.39)
where τ i’s are the forces of the virtual cylinders that replace the cables. Now, by setting all
the cable lengths, li, equal to their actual lengths, τ i’s are found from Eq. (5.39) as the cable
tensions. As a result, the equations of the system given in Eq. (5.17) remain unchanged and
104
Eq. (5.39) is used to express the cable tensions in terms of s and its derivatives. Note that
Lagrange’s multipliers λj are the same as what found in Eq. (5.21). Therefore, Eq. (5.39) can
be regrouped in a similar way as in Eq. (5.23) to become:
an+is+ bn+i + cn+i = τ i i = 1, 2, ...,mc. (5.40)
where an+i, bn+i, cn+i are named and numbered similarly as in Eq. (5.23). Note that a positive
τ i is a compressive force which tends to increase the value of the coordinate variable li. As a
result, negative τ i’s in Eq. (5.40) represent tensile forces and the positiveness of the tension in
the cables is expressed by the following inequalities:
an+is+ bn+i + cn+i = τ i ≤ −η i = 1, 2, ...,mc (5.41)
where η is a positive value assumed as the minimum allowed tension in all the cables. Inequalities
(5.41) result in new limits on the path acceleration, s :
s ≤ −η−bn+i−cn+ian+i
if an+i > 0
s ≥ −η−bn+i−cn+ian+i
if an+i < 0i = 1, 2, ...,mc. (5.42)
and can be expressed as:
TLB(s, s) ≤ s ≤ TUB(s, s) (5.43)
TLB(s, s) = maxi:an+i<0
µ−η − bn+i − cn+i
an+i
¶(5.44)
TUB(s, s) = mini:an+i≥0
µ−η − bn+i − cn+i
an+i
¶(5.45)
where TLB(s, s), TUB(s, s) are the limits on the path acceleration due to the cable tension
constraints. Using Eq. (5.32), inequality (5.43) can be written as:
TLB
s≤ dsds≤ TUB
s(5.46)
Inequality (5.46) should be considered along with inequality (5.33) since both of them con-
strain the acceleration of the end-effector. Therefore, the overall limits on the acceleration or
105
the slope of the trajectory is found from inequalities (5.31) and (5.46) to be:
Min_slope(s, s) ≤ ds
ds≤Max_slope(s, s) (5.47)
Min_slope(s, s) = max
µTLB
s,MLB
s
¶(5.48)
Max_slope(s, s) = min
µTUB
s,MUB
s
¶(5.49)
5.4.4 Finding the Time-optimal Trajectory
As it was mentioned before, when the geometrical path is fixed, the manipulator’s dynamic will
be a second order system represented by state variables s and s. Therefore, the state of the
system and the trajectory can be visualized in the phase plane. It was also shown that how
other constraints can be represented in the phase plane by determining some admissible regions
which the trajectory of the system can never exit. In Figure 5-5, an example diagram of the
phase plane along with the admissible region is shown. The admissible region is determined
by velocity, torque and cable tension constraints. At any point inside the admissible region,
there is a range of possible slopes (end-effector acceleration). This range shrinks as we move
up towards higher velocities, s, until it reduces to only one possible slope (acceleration) on the
border corresponds to actuator torque or cable tension constraints. Beyond this point, there
is no possible slope for the trajectories and hence, no trajectory can cross this border. The
time optimal trajectory between two arbitrary points in the phase plane such as (s0, s0) and
(s1, s1) should be found such that it minimizes the elapsed time and never crosses the border
of admissible region.
The algorithm for finding the time-optimal trajectory on the phase plane is explained in
this section without proof. For the proof of optimallity, the reader is referred to [60] and [61].
The main idea of this algorithm is to always keep the velocity at its maximum possible value
so that the time be minimum. As a result, the acceleration of the end-effector, s, is always at
one of its limits. In other words, the end-effector is always accelerating or decelerating with the
maximum possible values and therefore, at some points, it switches from maximum acceleration
suddenly to maximum deceleration or vice versa. These points are called switching points.
Before explaining the algorithm, the accelerating and decelerating trajectories should be
106
s&
s1s0s
Torque or cabletension Constraints
Border
VelocityConstraint
Border
Admissibleregion
Maximm and minimumpossible slopes for the
trajectories
Figure 5-5: A schematic diagram of the phase plane and the admissible region.
clearly defined. An accelerating trajectory in this section is a trajectory on the phase plane for
which the slope at any point is at the maximum possible value. The maximum slope at the
points inside the admissible region is found from Eq. (5.49) and thus the trajectory is found by
integrating the following equation:
ds
ds=Max_slope(s, s) (5.50)
until it reaches the border of inadmissible region. For this situation, the following two possibil-
ities are considered:
1. If the border is due to the torque or cable tension constraints, the accelerating trajectory
cannot continue any further and ends.
2. If the border is due to the velocity constraint and the slope of the border is V S(s) then
the trajectory can continue only if Min_slope(s, s) ≤ V S(s) ≤Max_slope(s, s). In this
case, the trajectory is found by integrating dsds = min (Max_slope(s, s), V S(s)) until it
leaves the velocity border or hits the border of torque or cable tension constraint. In the
107
former case Eq. (5.50) will be used again to continue the trajectory and in the latter one,
the trajectory ends.
The decelerating trajectory is found similarly by integrating dsds = Min_slope(s, s). The
decelerating trajectory ends as soon as it hits the border of inadmissible region.
The algorithm to build the time-optimal trajectory is explained in two stages. At first,
the case of only one switching point is considered and then, it is extended for the cases with
multiple switching points.
Single Switching Point
The time-optimal trajectory is built as follows:
1. From the starting point on the phase plane i.e. s = s0 and s = 0 , construct an accelerating
trajectory moving forward in s until it ends or crosses the vertical line s = s1. This
trajectory is called take off trajectory and shown in Fig. 5-6a by a solid line.
2. From the ending point on the phase plane i.e. s = s1 and s = 0, construct a decelerating
trajectory moving backward in s until it ends or crosses the vertical line s = s0.This
trajectory is called landing trajectory and shown in Fig. 5-6a by a dashed line
3. If the two trajectories of steps 1 and 2 intersect (means that there is only one switching
point), the intersection is the switching point at which the manipulator should switch
from maximum acceleration to maximum deceleration. The time-optimal trajectory is
found by merging the two trajectories at the switching point.
After the trajectory is determined, Eq. (5.16) is used to solve the inverse dynamics which
determines the actuators’ torque values.
Multiple Switching Points
If the two trajectories of steps 1 and 2 end before intersecting each other as shown in Fig. 5-6b,
then there will be more than one switching points. In order to find the switching points and
construct the time-optimal trajectory, the algorithm is continued as follows:
108
4. On take off trajectory, find the switching point a as shown in Fig. 5-6b and construct a
decelerating trajectory. The property of point a is that the decelerating trajectory starting
from this point is tangent to the boundary of inadmissible region at a point such as b.
5. Take the touching point b as the next switching point and construct an accelerating
trajectory starting from b. This trajectory either intersects with landing trajectory found
in Step 2 or hit the border of inadmissible region. For the former case go to Step 6 and
for the latter one jump to Step 7.
6. Take the intersection (shown by c in Fig. 5-6b) as the last switching point and jump to
Step 8
7. Take the accelerating trajectory between points b and c as the new take off trajectory
and repeat the procedure from Step 4.
8. Combine all the trajectories merged at switching points to build the time-optimal trajec-
tory.
In step 4, finding point a is a time consuming job because it requires several decelerating
trajectories to be generated and checked whether they are tangent to the border of the inad-
missible region. Instead, a more efficient method is used which first locates point b of Step 5
and then finds point a. In this method the border of inadmissible region is directly searched
for point b. Let h be the intersection of the take off trajectory with the border of inadmissible
region as shown in Fig. 5-6b. It is known that point h is an ending point for the accelerating
trajectory meaning that there is no acceptable acceleration, and hence, the trajectory has to
end at this point. If we move from h forward on the border of inadmissible region (towards
larger s), b, as shown in the same figure, is the point whose admissible slope is the same as the
slope of the border curve which indicates that the decelerating trajectory at b is tangent to the
border (a similar situation can be seen in Fig. 5-5). Therefore, b can be found easily by moving
forward on the border. When b is found, a decelerating trajectory should be built starting from
b and moving backward until it intersects with take off trajectory. The intersection point is a.
109
s&
s1s0s
Inadmissibleregion
Accelerating trajectoriesDecelerating trajectories
s&
s1s0s
Inadmissibleregion
Maximum AccelerationMaximum Deceleration
Switchingpoint
a
bc
0
0
(a)
(b)
h
Take offtrajectory Landing
trajectory
Figure 5-6: Finding the time-optimal trajectory in phase plane. a) Single switching point, b)Several switching points.
110
5.4.5 Time-optimal Trajectory Planning in DeltaBot
In this section, the implementation of the time-optimal trajectory planning algorithm for
DeltaBot is presented and the results are discussed. The implementation of the algorithm
is done in MATLAB using the manipulator’s parameters such as dimensions and inertia prop-
erties of the robot links as well as actuators specifications provided by the manufacturer.
The dynamics of DeltaBot was required for the time-optimal trajectory. The dynamics of
DeltaBot was modeled by Lagrangian method as mentioned in Section 5.4.3. In this model, all
the constraints imposed by the cables should appear among constraint equations so that their
internal forces (cable tensions) can be found. As a result, although DeltaBot has only three DoF,
all six degrees of freedom of the end-effector together with the active joint coordinates (three
arm angles) were considered as the generalized coordinates. Therefore, the system has nine
generalized coordinates and six constraint equations. The constraint equations are obtained by
considering that each cable belongs to a closed kinematic chain and produces one constraint
equation. The constraint equation expresses the length of the cable in terms of the other
coordinate variables. More details on the modeling of the dynamics of DeltaBot is given in
Appendix A.
The implementation of the time-optimal algorithm has some numerical difficulties. The
details of programming and numerical challenges are not presented here for the sake of brevity,
however a list of the main problems which should be dealt with in this algorithm are given here:
1. The slope of the trajectory in the phase plane tends to infinity as velocity goes to small
values. For instance, at the beginning and the end of the path, the velocities are zero
and hence, the slope is infinity. As a result, for these situations, the generation of the
trajectory cannot be done by integrating Eq. (5.50) on s. To resolve this problem, instead
of integrating on s, the trajectory is found by integrating the tangent vector along the
trajectory. The normalized tangent vector of the trajectory at an arbitrary point (s, s) is
found from Eq. (5.32) to be:
t(s, s) =1√
s2 + s2(s, s)t (5.51)
2. Finding the touching points on the border of inadmissible region such as point b in Fig. 5-
111
6b is numerically sensitive. That is because the border curve is not analytically available.
At each particular s, the the border point is found through a numerical search which looks
for the smallest s at which the Min_slope and Max_slope (see Eqs. (5.48,5.49)) are
equal. In addition, at the touching point, the trajectory must be tangent to the border
curve. Any numerical error on locating point b will make the trajectory to enter the
inadmissible region either on the right side of b or on the left side. This problem can
be solved if the numerical tolerance in finding the border of inadmissible region is not
symmetric. This tolerance is set to zero on the inadmissible side and some nonzero value
on the admissible side. In other words, the border curve is found such that it is always
inside the actual admissible region. Therefore, point b is moved down into the admissible
region for a very small value.
3. The algorithm is relatively time consuming mostly because of the algebraic equations and
some redundant trajectory generations. The generation of all accelerating and deceler-
ating trajectories should be continued until they reach one of the axes or lines such as
s = s0 or s = s1 or intersect with the border of inadmissible region. However, only a small
piece of each of them is used when they are merged together. To overcome this problem
to some extent, an efficient subroutine should be used that can detect the occurrence of
any intersection of the trajectory being generated with previously generated ones. This
will save a lot of computational time.
The dimensions of DeltaBot are reported in Chapter 4. The actuators of the robot are three
DC brushless motors: Kollmorgen 6SM47L-30001. The motors have a stahl torque of 3Nm and
nominal torque of 2.2Nm at the rated speed of 3000rpm obtainable by a supply voltage of 230V.
The maximum torque of the motor decreases linearly upon increasing of velocity.
In Fig. 5-7, a typical pick-and-place path is shown inside the workspace of DeltaBot. This
path is a benchmark to evaluate the speed of the robot. The path is one foot long and one
inch high. The time-optimal trajectory for this path is generated and shown in Fig 5-8. The
s−axis is normalized with the total length of the path and therefore the vertical axis, s, has
1For the detailed characteristics of this motor see:http://www2.danahermotion.com/products/servo/motors/bless/index.html
112
-0.2-
0.15
-0.1
-0.05 0 0.05 0.1 0.15 0.2
-0.2-0.1
00.1
0.2
0.36
0.38
0.4
0.42
0.44
0.46
0.48
Workspace ofthe robot
Standard pick-and-place path
Z (m)
Y (m)
X (m)
Figure 5-7: The standard pick-and-place path shown inside the workspace of DeltaBot.
a dimension of time−1. For the experiment, the torque and speed limits of the motors were
reduced by 10% to be on the safe side and not saturate the system. The trajectory has five
switching points and is generated using a Pentium 4 intel processor in about four minutes.
The time-optimal trajectory shown in Fig. 5-8 has five switching points and a motion time
of 180msec. It is seen that the time-optimal trajectory touches the border of the inadmissible
region at two points both of which belong to the cable tensions constraints. Although it is
the velocity constraint that is producing a relatively lower border in most of the locations, the
trajectory speed is mostly limited by the cable constraints at the two critical regions shown
in Fig. 5-8. Considering the geometry of the path (Fig. 5-7) it is seen that these two critical
regions are due to the curved part of the path after lift-off and before set-down. The cable
tensions during the time-optimal motion is shown in Fig. 5-9. The minimum pretension in
cables, η, was 10N and hence tension in all the cables is maintained equal or greater than 10N.
It is seen that cables 3 and 1 reach the minimum allowed tension and hence, control the speed
limit in lift-off and set-down, respectively.
113
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
5
10
15
20
25
30
35
InadmissibleRegion
TorqueConstraints
VelocityConstraints
Time-optimal trajectory
Switching point
)(sec 1−s&
)(normalizeds
Criticalregion
Cable TensionConstraints
Criticalregion
Figure 5-8: The time optimal trajectory of a standard pick-and-place path on DeltaBot.
114
0 0.5 10
20
40
60
80
100
0 0.5 10
20
40
60
80
100
0 0.5 10
20
40
60
80
100
0 0.5 120
40
60
80
100
0 0.5 10
20
40
60
80
100
0 0.5 10
20
40
60
80
100
Cable 1 Cable 2
Cable 3 Cable 4
Cable 5 Cable 6
Cab
le T
ensi
on (N
)
Cab
le T
ensi
on (N
)
Cab
le T
ensi
on (N
)
Cab
le T
ensi
on (N
)
Cab
le T
ensi
on (N
)
Cab
le T
ensi
on (N
)
s (normalized) s (normalized)
s (normalized) s (normalized)
s (normalized) s (normalized)
Figure 5-9: The cable tensions in DeltaBot during the time-optimal trajectory.
115
PIDController Notch Filter Servo
Amplifier
ReferenceTrajectory DC Brushless
Servo Motorθθ&
Position Controller
Figure 5-10: The schematic diagram of the trajectory tracking system used for DeltaBot.
5.4.6 Experiment Results
The prototype of DeltaBot whose design and fabrication was explained in Chapter 4 is equipped
with DC brushless motors and digital amplifiers and run by a commercial motion control card,
PMAC by DeltaTau, which has a position feedback control system along with some filters.
The schematic of the robot control system is shown in Fig. 5-10. The notch filter is installed
as a vibration reducer and is tuned so that the frequency components lying inside a ±10%
neighborhood of the resonance frequency be filtered out. The servo amplifiers have velocity
feedback from the motors.
The time-optimal trajectory found in the last section, was tested on DeltaBot. The com-
manded and actual path of the end-effector is shown in Fig. 5-11a and the following error which
is the distance between the commanded and actual position of the end-effector is calculated
for all points of the path and plotted in Fig. 5-11b. All the measurements are done based on
actuators’ angles using the motors’ encoders. The end-effector position is found by solving the
forward kinematics of the manipulator.
It should be noted that in an ideal case, the following error of the time-optimal trajectory
should be zero. That is because all the limitations of the actuators and the dynamics of the
system are included in the generation of the trajectory. However, the following error still exists
mostly because the controller of the robot is not a perfect one that can mimic the inverse
dynamics of the manipulator and also there are possible inaccuracies in the dynamic model of
the manipulator.
116
0 0.05 0.1 0.15 0.2 0.25 0.3 0.350
2
4
6
8
10
s (m)
Follo
win
g er
ror (
mm
)
(a)
(b)
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2
0.4
0.405
0.41
0.415
0.42
0.425
0.43
0.435
0.44
Z (m
)
X (m)
Actual pathCommanded path
Figure 5-11: Testing of the time-optimal trajectory on DeltaBot a) The commanded and actualpath of the end-effector b) The following error of the end-effector.
117
The maximum following error, in this experiment, is 9.7mm and the average value is 1.7mm
along the path. Fig. 5-11a shows that the following error is relatively large around the curved
portion right after the lift-off and before the set-down. Recalling the trajectory on phase plane
in Fig. 5-8b, these two portions of the trajectory are very close to the inadmissible region.
Therefore, it can be concluded that some inaccuracies in the manipulator model and ignoring
the actuators dynamics caused saturation of the actuators and violation of the geometrical path
around the critical points.
In general, time-optimal path planning techniques are computationally intensive especially
in parallel manipulators. For the path used in the experiment, the trajectory generation took
about 4 minutes using MATLAB codes running on a Pentium 4 computer where the motion
itself takes 180msec.
5.5 An Alternative Real-time Trajectory Planning Technique
The main difficulty in using time-optimal trajectories is the relatively high computational cost
specially when parallel manipulators with algebraic constraint equations are used. In real
industrial applications, the high-speed robotic systems are usually equipped with a vision system
to sense the location of the objects based on which the tasks are planned on-line. Therefore,
the path/trajectory planing should be thought as a real time operation rather than a time
consuming off line procedure.
The experimental results shown in the last section also showed that the time-optimal tra-
jectory is very sensitive to the accuracy of the dynamic model and the actuators’ saturation
limits. In the given example, although the actuator limits were reduced by 10% from what
reported by the manufacturer, the saturation occurred in some regions along the path which
resulted in large following error.
In this section, an alternative approach for the trajectory planning is studied and imple-
mented on DeltaBot and the results will be compared with those of time-optimal technique. In
this approach the computational efficiency of the algorithm is the main goal so that it can be
implemented as a real-time path planner and be integrated into the current industrial motion
controllers. In this approach, the trajectory is calculated in real-time and has a prescribed
118
)(m
/s2
s&&
time (sec)
0
Accmax
Decmax
Area=Maximumspeed
Jerkmax (Slope of the curve)
Tacc
Tdec
Acceleration Pattern
0 Tf
Acce
lera
tion
0
T'acc
T'dec
Figure 5-12: The general pattern of the acceleration of the end-effector along the path.
acceleration pattern. The pattern of the acceleration is provided by the user and selected based
on the nature and application of the path.
The core idea of this approach is to start the motion with maximum acceleration until the
maximum speed is obtained. Then move with constant velocity and finally decelerate with
minium acceleration to stop at the end point. Therefore, the general pattern of the acceleration
includes two trapezoidal as shown in Fig. 5-12. In this figure, the path acceleration (acceleration
of the end-effector along the path) is plotted versus time where s is the arc-length parameter.
The acceleration pattern shown in Fig. 5-12 is identified by the following parameters:
1. Accmax and Decmax: The maximum and minimum accelerations along the path, respec-
tively. DeltaBot is designed to provide a minimum of 4g everywhere in the workspace and
in every directions. Therefore, Decmax is set to −4g and Accmax is set to −1.2Decmax. In
order to justify this decision, the shape of a typical pick-and-place path and the specifi-
cations of DeltaBot should be considered. The maximum acceleration of the end-effector
in DeltaBot is mostly limited by the spine force which is applied by a pneumatic cylinder
to the end-effector and maintains tension in all cables. During the set-down, the cylin-
der is extending and hence, cables are not providing any force for the movement of the
119
end-effector. However, during the lift-off in which the cylinder contracts, higher acceler-
ations can be obtained since all cables contribute to the accelerating of the end-effector
by applying pulling forces. As a result and based on a simple computer simulation the
acceleration can reach an average of 6g for the lift-off.
2. Jerkmax: The maximum rate of the acceleration (jerk) defined as:
Jerkmax =2AccmaxTacc − T 0acc
=−2DecmaxTdec − T 0dec
(5.52)
Based on the maximum torque rate of the actuators recommended by the manufacturer
and the average inertia matrix of DeltaBot, Jerkmax is set to 800(m/s3).
3. Tacc and Tdec : The accelerating and decelerating period along the path. It should be
noted that there are also T 0acc and T0dec, shown in Fig. 5-12, which are the durations of
maximum and minimum accelerations, respectively. However, using Eq. (5.52), T 0acc and
T 0dec can be found to be:
T 0acc = Tacc −2AccmaxJerkmax
(5.53)
T 0dec = Tdec +2DecmaxJerkmax
(5.54)
Since the velocity of the end-effector should be zero at the end of the path, the area under
the acceleration curve should be zero or:
Accmax(Tacc + T0acc) +Decmax(Tdec + T
0dec) = 0 (5.55)
Using Eqs. (5.55), (5.53) and (5.54), Tdec is found to be:
Tdec = −AccmaxDecmax
µTacc −
AccmaxJerkmax
¶− DecmaxJerkmax
(5.56)
4. Tf : the total time of the motion.
According to the above list of parameters, two parameters, Tf and Tacc, should be de-
termined before the acceleration and hence the trajectory can be calculated. For these two
120
unknowns, two equations are required. In order to obtain the necessary equations, the accel-
eration curve is integrated twice to obtain the position S(t). It is obvious that S(Tf ) should
equal the total length of the path which gives the first equation. For the second equation, we
make an assumption for the value of the average velocity: S(Tf )Tf
. DeltaBot is designed and
tested to perform 120 cycles of the standard path per minute. Taking the standard path as a
benchmark, the average velocity of the end-effector is 1.5(m/s) and hence the second equation
becomes S(Tf )Tf= 1.5(m/s).
5.5.1 Experimental Results
Using the procedure explained in the last section, the trajectory for the standard pick-and-place
path (see Fig. 5-8a) was calculated. The motion control system of the robot is the same as
explained in Section 5.4.6. The robot performance on this trajectory is shown in Fig. 5-13.
Fig. 5-13a shows the commanded and actual paths of the end-effector. The total motion time
in this trajectory was found to be 210msec, 17% more than that of time-optimal technique
however, the computational time is 360msec which is about 600 times faster than that of the
time-optimal method.
The following error i.e. the distance between the actual position of the end-effector and
the commanded one is shown in Fig. 5-13b to be improved. The maximum following error is
2.9mm and the average is 1mm along the path. These values for the time-optimal path (with
saturation limits lowered by 10%) are 9.7mm and 1.7mm, respectively.
5.6 Conclusion
In this chapter, the trajectory planning of cable-based manipulators was studied by two different
approaches. The first one was to minimize the motion time and hence generate the fastest
motion while the second one is aimed at the computational efficiency and real-time operations.
In both cases, the results were implemented using a commercial motion controller in order to
mimic the real working situation of industrial robotic systems.
A time-optimal trajectory planning was developed for cable-based manipulators by incor-
porating the cable tensions by Lagrange’s multipliers into the equations of the system. The
121
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2X (m)
0.405
0.41
0.415
0.42
0.425
0.43
0.435
0.44
Z (m
)
Actual pathCommanded path
0 0.05 0.1 0.15 0.2 0.25 0.30
0.5
1
1.5
2
2.5
3
(a)
Follo
win
g er
ror (
mm
)
s (m)
(b)
0.35
Figure 5-13: Performance of DeltaBot on the real-time trajectory a) The commanded and actualpath of the end-effector b) The following error of the end-effector.
122
technique was applied to the trajectory planning of DeltaBot and the experimental results were
presented. In a standard pick-and-place motion, the end-effector showed an average following
error of 1.9mm which came to a maximum of 9.7mm.
A real-time technique for trajectory planning was also introduced and its performance on
DeltaBot was shown. This method uses a given acceleration pattern to generate the trajectory.
The acceleration pattern can be tailored for any particular cable-based manipulator. The
motion time for a standard pick-and-place path was found to be 17% more than that of the
time-optimal technique. However, the computational time was way shorter. The following error
of the end-effector was shown to be 1mm in average and 2.9mm in maximum which are lower
than those of time-optimal technique.
A final evaluation and comparison of the trajectory planning techniques require the appli-
cation and working conditions of the robot to be considered. For the cable-based manipulators
of this work, the main application is high-speed pick-and-place operations and therefore the
operation time as well as computation time should be both optimized. It was seen that the
time-optimal technique is computationally expensive specially when used for parallel manipu-
lators whose models include algebraic non-linear constraint equations. The other consideration
in this work was using an industrial motion controller which imposes a closed architecture for
the control of the system. The control scheme which was basically a PID was revealed to be
unsuccessful in handling the uncertainties in the model parameters and saturation limits used
in the time-optimal technique. As a result, higher following error occurred compared to the
real-time method. The real-time technique, although does not generate the time-optimal so-
lution, is computationally efficient and flexible. The acceleration pattern and its parameters
are experimentally determined and hence, can be tailored according to the specifications of the
manipulator.
123
Chapter 6
Stiffness and Stability of
Cable-based Manipulators
In this chapter, the stiffness and stability of cable-based manipulators due to the antagonistic
forces are studied. Antagonistic forces are used in cable-based manipulators to keep cables in
tension and hence, provide the rigidity of the manipulator. It is known that the internal forces
produce a stiffness for the manipulator on top of the stiffness which arises from the elasticity
of the cables and the actuators drivers. The actuator stiffness is the stiffness of the position
control system and depends on the actuators’ parameters and closed loop control gains. There
is no unique terminology for these two types of stiffness in the literature. Therefore, in this
work, we use active stiffness for the stiffness produced by the internal forces of the cables and
structural stiffness for the one resulted from the elasticities and the stiffness of the actuation
system.
The structural stiffness of parallel manipulators is the subject of several papers in the
literature. The stiffness mapping of parallel manipulators under the assumption of no load
was first reported by Gosselin [69]. El-Khasawneh and Ferreira [70] have also analyzed the
structural stiffness of Stewart-Gough platform. A similar study is also done by Verhoeven et al
[71] on cable-based manipulators. He has considered the effects of the internal forces only on
the elongation of the cables which is no more than 0.5%. Therefore, he has neglected this effect
on the overall stiffness of the manipulator. Although his argument is correct, it should be noted
124
that the internal forces themselves form a force system which has its own stiffness regardless of
the elongation of the cables.
Hanafusa [72] studied the effects of internal forces on the stiffness. Griffis and Duffy [73]
derived the stiffness matrix of a Gough-stewart manipulator by considering internal forces. In
[74], Ciblak and Lipkin considered an arbitrary number of limbs. They showed that the active
stiffness is generally asymmetric even if the manipulator is only under graviational forces. This
is an important result although not exactly correct. The exact root of the asymmetry will be
shown later in this chapter.
Svinin et al [75, 76] studied the stiffness matrix for the stability analysis of fully parallel
manipulators. In this context, the manipulator is called stable iff its stiffness matrix which
is the summation of both structural stiffness and active stiffness be positive definite. They
showed that the structural stiffness matrix is positive definite and hence stable as long as all
the actuators’ stiffness are positive. However, the active stiffness is asymmetric and may be
unstable. They introduced some necessary conditions on the kinematics and internal forces for
the stiffness stability. They also proposed a feedback control law to stabilize a manipulator by
changing the actuators stiffness.
In cable-based manipulators, it is essential to know whether the stiffness of the system
increases or decreases upon an increase in cables’ tension. Although it seems that the higher
the tensions are in the cables the stiffer the manipulator will be, it will be shown later that this
can be wrong if the manipulator is not stabilizable. Remembering that cable tension increases
upon increase of the payload, an unstabilizable cable-based manipulator eventually ends up in
an unstable situation and shows erratic motions.
In the next section, a new approach is presented to calculate the stiffness matrix of cable-
based manipulators. In the following sections, the concept of stabilizability of a cable-based
manipulator is introduced and a set of sufficient conditions to guarantee the stabilizability of
these manipulators are derived. It will be shown by some examples that even a tensionable
manipulator in which, the rigidity of the manipulator can be maintained under any arbitrary
external load, may become unstable if the antagonistic forces become too large.
125
Cable 1
1u
End-effector
Cable m
eM
eF
1rir mr
XY
Z
O'
O
iumu
Figure 6-1: General model of a cable-based fully parallel manipulator.
6.1 Stiffness Matrix of a Cable-based Manipulator
The cable-based manipulator studied in this chapter is the generalized version of the manip-
ulator explained in the beginning of this thesis (Fig. 3-1) by removing the spine. Therefore,
the analysis is valid regardless of how the rigidity of the manipulator is provided and hence, is
applicable to any cable-based manipulator.
In Fig. 6-1, the general model of a fully parallel manipulator in which the end-effector
is restrained by m cables is shown. Vectors u1, u2, ..., um are unit vectors along the cables
pointing towards the fixed base and r1, r2, ..., rm are the position vectors of anchor points on
the end-effector with respect to O0 where external force Fe and torqueMe are applied. Scalars
τ1, τ2, ..., τm indicate the forces in cables 1 to m, respectively assuming tensile forces to be
positive. The Jacobian matrix of this manipulator is found to be:
126
J =
⎡⎣ u1 ... um
[r1×]u1 ... [rm×]um
⎤⎦t (6.1)
where [ri×] is the cross product operator of vector ri = (rix, riy, riz)t that in matrix form is:
[ri×] =
⎡⎢⎢⎢⎣0 −riz riy
riz 0 −rix−riy rix 0
⎤⎥⎥⎥⎦ (6.2)
The static balance equation of this manipulator is:
Jtτ +We = 0 (6.3)
whereWe = (Fe,Me)t is the wrench applied to the end-effector at pointO0 and τ = (τ1, τ2, ...τm)t
is the vector of cable tensions. Assuming x to be the vector of position/orientation of the end-
effector determined in the fixed coordinate system i.e. x = (x, y, z, θx, θy, θz)t, the stiffness
matrix of the manipulator can be found by taking derivatives −We with respect to x :
K = −dWe
dx
Using Eq. (6.3), K becomes:
K = Jtdτ
dx+d
dx(Jt)τ (6.4)
In Eq. (6.4), dτdx can be written asdτdl
dldx where l =(l1, l2, ..., lm)
t is the vector of cables’ lengths.
Knowing that J = dldx , the stiffness matrix becomes:
K = JtΩJ+d
dx(Jt)τ (6.5)
Ω =dτ
dl= diag(κ1, κ2, ...,κm)
where κi is the cable stiffness i.e. the stiffness coefficient of the ith cable. It should be noted
that cable stiffness in this work represents two stiffness in series: the elastic stiffness of the cable
and the actuator stiffness due to the closed-loop control system. Due to the nature of in series
127
springs, the resultant stiffness is mostly determined by the least stiff spring. In a cable-based
manipulator, the elastic stiffness of the cable is a function of the cable length which may change
during the motion and the closed loop stiffness may also change due to the control scheme. As
a result, the actual cable stiffness highly depends on the pose and actuation arrangement of the
manipulator.
In the rest of this chapter, an approach is introduced to find the stiffness matrix of the
end-effector in a cable-based manipulator that accommodates for both the effects of the cable
stiffness and the internal cable forces. This approach starts with the stiffness of a single cable as
the building block of any cable-based manipulator and then expands to a general manipulator.
6.1.1 Stiffness of a Single Cable
Fig. 6-2 shows a cable with stiffness coefficient of κ, length of l and tension of τ0 that is
balanced by external force Fe. Using x = (xc, yc, zc)t as the position vector of the cable end,
the Jacobian matrix can be easily shown to be J =1l [xc, yc, zc] and thus, its stiffness matrix is
found using Eq. (6.5) to be:
K =κ
l2
⎡⎢⎢⎢⎣x2c xcyc xczc
ycxc y2c yczc
zcxc zcyc z2c
⎤⎥⎥⎥⎦+ τ0l3
⎡⎢⎢⎢⎣l2 − x2c −xcyc −xczc−ycxc l2 − y2c −yczc−zcxc −zcyc l2 − z2c
⎤⎥⎥⎥⎦ (6.6)
=κ
l2xxt +
τ0l3¡l2Iide−xxt
¢(6.7)
where Iide is the identity matrix.
It can be shown that this system has a stiffness of κ along the cable direction and τ0l along
any direction normal to the cable. For a displacement along the cable such as εx where ε is an
arbitrary small real number, δFe which is the variation of Fe can be obtained from:
δFe = K(εx) =εκ
l2xxtx+ε
τ0l
¡l2Iide−xxt
¢x (6.8a)
= εκ
l2l2x+ε
τ0l
¡l2x−l2x
¢(6.8b)
= κ(εx) (6.8c)
128
(xc,yc,zc)t
OX
Y
Z
Fe
0,, τκ l
Figure 6-2: A single cable with some internal force.
Eq. (6.8c) indicates κ as the stiffness along the cable direction. Similarly, for a displacement
such as h normal to the cable i.e. xth = 0, we have:
δFe = Kh =κ
l2xxth+
τ0l3¡l2Iide−xxt
¢h (6.9a)
= 0 +τ0l3l2h (6.9b)
=τ0lh (6.9c)
Eq. (6.9c) shows that τ0l is the stiffness normal to the cable direction. This result will be used
to build an equivalent stiffness model for a single cable which will be used later to find the total
stiffness of a cable-based manipulator.
In Fig. 6-3a,b, an equivalent stiffness model of a cable is shown. In this model, the stiffness
of a cable is presented by a combination of four springs with no pretension. The direction and
stiffness of each spring will be chosen so that the stiffness of the equivalent model becomes the
same as what found in Eq. (6.7). The pretension of the cable, as shown in the figure, is consid-
ered separately as a constant force in order to balance the external force applied to the cable
and hence does not have any contribution to the stiffness matrix of the cable. However, these
constant forces on a cable-based manipulator will be shown to produce a rotational stiffness
when several cables are attached to the end-effector.
In order to calculate the stiffness of the four-spring model of Fig. 6-3b, we can use Eq.
129
0,, τκ l
eF eF
+≡
X
Y
Z
(a) (b)
u)0τ
u)
1v
2v
3v
u)
κ
1κ
2κ
3κ
Figure 6-3: An equivalent stiffness model for a single cable with pretension: a) A single cableb) An equivalent four-spring.
(6.5):
K = JtΩJ (6.10)
where J is the Jacobian of the four-spring model and Ω is a diagonal matrix with springs
coefficients on the main diagonal. In order to calculate J, one should determine the directions
of the springs based on the direction of the cable. In Fig. 6-3, u is a unit vector along the cable
and vi’s are three normal directions to the cable that can be defined uniquely as:
vi =1
γi(ei − (ei · u)u) (6.11)
γi = |ei − (ei · u)u| i = 1, 2, 3 (6.12)
where e1, e2, e3 are unit vectors along X,Y and Z axes, respectively. According to Fig. 6-3
and Eq. (6.11) and (6.12), unit vectors v1, v2, v3 are normal to u because:
vi · u =1
γi(ei · u−(ei · u)u · u) =
1
γi(ei · u− ei · u)= 0 (6.13a)
130
and therefore the Jacobian matrix of the four-spring model is [u v1 v2 v3]t. Now, we show
that if Ω =diag¡κ, τ0l γ
21,
τ0l γ
22,
τ0l γ
23
¢then the stiffness matrix of the four-spring model will be
exactly the same as the stiffness matrix of a single cable. For this purpose, it is sufficient to
calculate the stiffness of the four-spring model and show that it has a stiffness of κ along u and
τ0l along any direction normal to u (remember that for 3-by-3 stiffness matrices, equal stiffness
in three independent directions proves the two stiffness to be equal ).
The stiffness matrix of the four-spring model is:
K = [u v1 v2 v3] diag³κ,
τ0lγ21,
τ0lγ22,
τ0lγ23
´[u v1 v2 v3]
t (6.14)
= κuut +3Xi=1
τ0lγ2i viv
ti
By substituting for vi’s from Eq. (6.11), it becomes:
K = κuut +3Xi=1
τ0l
¡ei − uutei
¢ ¡eti − etiuut
¢= κuut +
τ0l
3Xi=1
¡eie
ti − eietiuut − uuteieti + uuteietiuut
¢(6.15)
noting that3Pi=1eie
ti = Iide3×3, Eq. (6.15) can be written in matrix form as:
K = κuut +τ0l
¡Iide − uut
¢ ¡Iide − uut
¢(6.16)
For any small displacement along the cable direction such as εu, ε∈R we have:
εKu = +κεuutu+τ0l
¡Iide − uut
¢ ¡εu− εuutu
¢= κεu (6.17)
which implies that the stiffness along the cable is κ. For a displacement h normal to the cable
131
i.e. uth = 0, we have:
Kw = κuuth+τ0l
¡Iide − uut
¢ ¡h− uuth
¢=
τ0lh (6.18)
which proves that the stiffness is τ0l along any direction normal to the cable. As a conclusion,
if the stiffness coefficient of the spring along the cable is set to κ and the coefficients of the
normal springs are set to:
κi =τ0lγ2i i = 1, 2, 3 (6.19)
the four-spring model in Fig. 6-3b exactly represents the stiffness of a single cable given in
Eq. (6.7). This model will be used in the next section to calculate the stiffness of a parallel
manipulator.
6.1.2 Stiffness of a Fully Parallel Cable-based Manipulator
Using the equivalent stiffness model of a single cable found in previous section, the manipulator
of Fig. 6-1 can be decomposed into two systems as shown in Fig. 6-4. The system on the left
(Fig. 6-4a) represents the stiffness caused by the cables which, as calculated in the last section,
includes both structural stiffness and internal tension and is calledKs from now on. The system
on the right (Fig. 6-4b) represents the initial internal forces which are constant however, they
produce a stiffness called Kf . In order to understand how Kf shows up in the total stiffness
of the manipulator, it should be remembered that when the end-effector undergoes some small
displacement, the internal forces of the cables are altered due to the change in their direction.
The new internal forces contribute to the stiffness of the manipulator in two ways: first, through
the change in their force vector (direction change) and second, by the change in the orientation
of the end-effector which changes the moment of these forces. The former one is included in
Ks (Fig. 6-4a) by adding those normal springs to the cable. The latter is the reason for having
Kf . Note that, in Fig. 6-4b, all the internal forces are absolutely constant meaning that both
their magnitudes and directions do not change upon any displacement on the end-effector.
132
Cable 1
End-effector
Cable m
X Y
Z
Cable 1Cable m
iiu0τmmu0τ
101uτ
+
(a) (b)
eM
eF
1rir
mrO'
Figure 6-4: The equivalent stiffness model of the manipulator shown in Fig. 6-1. (a) The cablesstiffness and (b) The stiffness caused by the force distribution on the end-effector.
The total stiffness of the manipulator becomes:
K = Ks +Kf (6.20)
According to Fig. 6-4a, Ks is the stiffness matrix of a parallel manipulator with no preten-
sion. Hence, Ks is found from Eq. (6.5) to be:
Ks = JtΩJ (6.21)
The Jacobian matrix, as defined in Eq. (6.1), becomes:
J =
⎡⎣ u1 v1,1 v1,2 v1,3 u2
[r1×]u1 [r1×]v1,1 [r1×]v1,2 [r1×]v1,3 [r2×]u2...
vm,3
[rm×]vm,3
⎤⎦t6×4m
(6.22)
where ui is the unit vector along the ith cable (i = 1, 2, ...,m) and vi,j is the jth normal direction
133
to the ith cable (j = 1, 2, 3) and found using Eq. (6.11) and (6.12):
vi,j =1
γi,j(ej − (ej · ui)ui) (6.23)
γi,j = |ej − (ej · ui)ui| j = 1, 2, 3 and i = 1, 2, ...,m
and Ω is:
Ω4m×4m = diag
µκ1,
τ01l1
γ21,1,τ01l1
γ21,2,τ01l1
γ21,3,κ2, ...,τ0mlm
γ2m,3
¶(6.24)
where τ0jljγ2i,j is the stiffness of the j
th normal spring to the ith cable as found in Eq. (6.19).
In order to calculate Ks, Eq. (6.21) is expanded as:
Ks =mXi=1
κi
⎡⎣ ui
[ri×]ui
⎤⎦⎡⎣ ui
[ri×]ui
⎤⎦t +mXi=1
3Xj=1
τ0liγi,j
⎡⎣ vi,j
[ri×]vi,j
⎤⎦⎡⎣ vi,j
[ri×]vi,j
⎤⎦t (6.25)
Substituting from Eq. 6.23) for vi,j and γi,j doing some simplification, we obtain:
Ks =mXi=1
κi
⎡⎣ ui
[ri×]ui
⎤⎦⎡⎣ ui
[ri×]ui
⎤⎦t +mXi=1
τ0li
⎡⎣ Iide − uiuti[ri×]
¡Iide − uiuti
¢⎤⎦⎡⎣ Iide − uiuti
[ri×]¡Iide − uiuti
¢⎤⎦t (6.26)
which can be written as:
Ks =mXi=1
κi
⎡⎣ uiuti uiu
ti[ri×]t
[ri×]uiuti [ri×]uiuti[ri×]t
⎤⎦+mXi=1
τ0li
⎡⎣ Iide − uiuti [ri×]t − uiuti[ri×]t
[ri×]− [ri×]uiuti [ri×][ri×]t − [ri×]uiuti[ri×]t
⎤⎦ (6.27)
134
and finally:
Ks =mXi=1
(κi −τ0ili)
⎡⎣ uiuti uiu
ti[ri×]t
[ri×]uiuti [ri×]uiuti[ri×]t
⎤⎦+mXi=1
τ0ili
⎡⎣ Iide [ri×]t
[ri×] [ri×][ri×]t
⎤⎦ (6.28)
In order to calculate Kf , the stiffness of the system shown in Fig. 6-4b, assume the end-
effector undergoes a small displacement/rotation δx = (δp,δθ)t where δp is a small change in
the position and δθ is a small rotation on the end-effector. Since the cable forces, τ0iui, are
constant here, the variation of the wrench, δWe, applied to the end-effector is:
δWe =
⎛⎝ δFe
δMe
⎞⎠ =mXi=1
τ0i
⎡⎣ ui
(ri + δθ × ri)× ui
⎤⎦− mXi=1
τ0i
⎡⎣ ui
ri×ui
⎤⎦=
mXi=1
τ0i
⎡⎣ 0
(δθ × ri)× ui
⎤⎦ (6.29)
Eq. (6.29) shows that only the moment is changed and thus the stiffness is only a rotational
one which can be found as:
δWe =mXi=1
τ0i
⎡⎣ 0
ui×(ri×δθ)
⎤⎦ = mXi=1
τ0i
⎡⎣ 0
[ui×] [ri×] δθ
⎤⎦=
⎛⎝ mXi=1
τ0i
⎡⎣ 0 0
0 [ui×] [ri×]
⎤⎦⎞⎠⎛⎝ δp
δθ
⎞⎠ =Kfδx (6.30)
therefore:
Kf =mXi=1
τ0i
⎡⎣ 0 0
0 [ui×] [ri×]
⎤⎦ (6.31)
The decomposition of the stiffness matrix into Ks and Kf is used in the next section to
study the stability of a cable-based manipulator. Before going to the stability analysis, it is
noteworthy to examine Ks and Kf for their symmetry. It is evident that Kts = Ks and hence,
135
it is always symmetric. For Kf , the anti-symmetric part is found using Eq. (6.31) to be:
Kf −Ktf =
mXi=1
τ0i
⎡⎣ 0 0
0 [ui×] [ri×]− [ri×] [ui×]
⎤⎦ (6.32)
using Eq. (6.2), the lower right block matrix of Kf −Ktf becomes:
mXi=1
τ0i ([ui×] [ri×]− [ri×] [ui×]) =mXi=1
τ0i(−ri×ui) (6.33)
which is the negative of the resultant moment of the cable tensions. Using the moment equi-
librium equation we have:mXi=1
τ0i(ri×ui) +Me = 0 (6.34)
and therefore:mXi=1
τ0i(−ri×ui) =Me (6.35)
As a result, the anti-symmetric part of Kf which is the anti-symmetric of the total stiffness is
zero when there is no external moment. In other words, the asymmetric stiffness arises from
the external moment applied to the end-effector.
6.2 Stabilizability of a Cable-based Manipulator
Definition: A cable-based manipulator is stabilizable iff its total stiffness matrix can be made
positive definite under any arbitrary external load by choosing a proper set of antagonistic
forces.
Stabilizability of a cable-based manipulator guarantees the stability of the manipulator in
any circumstances as long as the antagonistic forces are large enough. In other words, this
property indicates that the manipulator becomes stiffer by increasing the antagonistic forces.
i.e. if a cable-based manipulator is not stabilizable, then antagonistic forces decrease the total
stiffness. Since antagonistic forces are necessary for the rigidity of the manipulator and are
proportional to the payload of the end-effector, an unstabilizable manipulator becomes unstable
when the antagonistic forces are too large and hence, the maximum payload will be limited.
136
As a result, the stabilizability of a cable-based manipulator becomes an essential issue in the
design of a robot when a certain payload capacity is required. It can be also concluded that
the stabilizability is a necessary condition if antagonistic forces are to be used to improve the
stiffness of a cable-based manipulator.
Theorem 8 For a cable-based manipulator at a given pose to be stabilizable, it is sufficient and
necessary that the manipulator be kinematically non-singular and the active stiffness matrix in
the absence of any external load be positive definite.
Proof. This theorem states that if the stiffness that is only due to the antagonistic forces
is positive definite then the cable-based manipulator can be made as much stiff as desired and
hence, is stabilizable. For the proof, assume the end-effector of a manipulator undergoes an arbi-
trary small displacement/rotation δx, the work done on the end-effector must be monotonically
increasing upon the increase of the antagonistic forces. This work is:
E = δxtKδx (6.36)
Let Ka be the active stiffness with no external load (the internal forces are only antagonistic
forces). Also let the total stiffness matrix be written as:
K = Ka +Kr (6.37)
and since Ka is representing the antagonistic forces, Kr will be due to the external load and
cable stiffness. Matrix Ka is obtained from Eq. (6.20) by setting all cable stiffness, κ’s, equal
to zero and assuming that cable tensions, τ0i’s, are antagonistic forces:
Ka =mXi=1
τ0ili
⎡⎣ Iide−uiuti¡Iide − uiuti
¢[ri×]t
[ri×]¡Iide − uiuti
¢[ri×]
¡Iide − uiuti
¢[ri×]t
⎤⎦+
mXi=1
τ0i
⎡⎣ 0 0
0 [ui×] [ri×]
⎤⎦ (6.38)
137
By substituting Eq. (6.37) in Eq. (6.36), we have:
E=δxtKaδx+δxtKrδx (6.39)
It is seen from Eq. (6.39) that if Ka is positive definite, E will monotonically increase upon
increasing antagonistic forces by a positive factor i.e. τ0i → ατ0i α > 0, i = 1, 2, ...,m. That is
because Ka linearly depends on antagonistic forces as shown in Eq. (6.38). Note that δxtKrδx
has a finite value for a non-singular pose and hence,.E can be made positive by choosing a
finite positive scaling factor α. To prove the other side of the theorem, it is enough to consider
that if the manipulator is stabilizable which implies that E is positive for any arbitrary Kr by
choosing proper antagonistic forces, then δxtKaδx has to be positive and hence Ka should be
positive definite which completes the proof.
Since Ka is a symmetric matrix, it will be positive definite iff all the eigenvalues are posi-
tive. Therefore, the six eigenvalues of this matrix should be found which is in general a time
consuming task. In the next section, a sufficient condition for the positive definiteness of Ka
is found which is much easier to calculate and also provides some insights into the roots of
unstabilizability of a cable-based manipulator.
6.3 Sufficient conditions for Stabilizability
It was shown that for the stabilizability of a cable-based manipulator, Ka should be positive
definite. In order to study the positive definiteness of Ka, we consider each of the two terms
in Eq. (6.38). The first term is obtained from Ks, Eq. (6.28), where all cable stiffness, κi’s,
are set to zero. It was shown in Section 6.1.2, that Ks is the stiffness of a manipulator with
no internal forces as shown in Fig. 6-4a. Svinin [76] shows that the stiffness matrix of such a
system is positive definite if the spring coefficients ( τ0ili and κi in this system) are all positive.
As a result, for a cable-based manipulator whose all cables are in tension, the first term of Ka
in Eq. (6.38) is positive definite. Therefore, for the positive definiteness of Ka, it is sufficient
that its second term in Eq. (6.38) be positive definite. Note that the second term in Eq. (6.38)
is Kf found in Eq. (6.31). This is the stiffness of the system shown in Fig. 6-4b, where all
cable tensions are antagonistic forces and hence, there is no external load on the end-effector.
138
Let Z be the matrix of non-zero elements of the second term in Eq. (6.38):
Z3×3=mXi=1
τ0i [ui×] [ri×] (6.40)
It was shown that Z is symmetric when the external torque applied to the end-effector is zero
therefore, it is positive definite if all of its eigenvalues are greater than zero. Using Eq. (6.2) to
expand Z, it can be written in terms of ui, ri as:
Z = −mXi=1
τ0i(ui · ri)Iide +Y (6.41)
Y =mXi=1
τ0i(riuti) (6.42)
where Y is symmetric and has a characteristic equation [76] in the form of:
ω3 − Lω2 + Sω − V = 0 (6.43)
where:
L =mXi=1
τ0i(ui · ri) (6.44)
S =mXi=1
mXj=i+1
τ0iτ0j(ri × rj) · (ui × uj) (6.45)
V =mXi=1
mXj=i+1
mXk=j+1
τ0iτ0jτ0k ri · (rj × rk) ui · (uj × uk) (6.46)
and all of its roots are positive if L > 0, S > 0 and V > 01. Note that the first term in Eq.
(6.41) is LIide, therefore, for any eigenvector, v, of Y we have:
Zv = −Lv +Yv
= (−L+ ω(Y))v (6.47)
1Note that these conditions are both necessary and sufficient for the positive definiteness of matrices that canbe expressed as in Eq. (6.42)
139
and hence, eigenvalues of Z and Y are related as L+ ω(Z) = ω(Y). Replacing ω in Eq. (6.43)
with L+ ω yields the conditions for the positive definiteness of Z:
L < 0 (6.48)
L2 + S > 0 (6.49)
V − LS > 0 (6.50)
As a result, a cable-based manipulator is stabilizable if all cables are in tension and inequalities
(6.48)-(6.50) hold true.
In most cable-based manipulators, cables anchor points (ri’s) are in the same plane. In this
case, V in Eq. (6.46) vanishes because ri · (rj×rk) = 0 for any i, j, k and hence, the inequalities
(6.48)-(6.50) reduces to L < 0 and S > 0. These conditions can be further simplified in planar
manipulators where ui’s and ri’s are all coplanar. In planar manipulators, the rotation occurs
only in the normal direction to the plane. This direction is normal to ui’s and ri’s and hence,
is the null space of Y given in Eq. (6.42). As a result for a planar manipulator, Z, as defined
in Eq. (6.41), becomes scalar:
Z = −mXi=1
τ0i(ui · ri) = −L (6.51)
and therefore, the only inequality required for the stabilizability is L < 0. It is evident that
if ui · ri < 0, i.e. the angle between ui ,ri be more than 90 for all i’s , then L < 0 and the
stabilizability holds true. This condition is more restrictive but has a geometrical implication
and hence, easier to verify.
6.4 Examples
In order to elaborate on the results of the above approach, several cable-based manipulators are
studied here. As the first examples, DeltaBot and BetaBot are examined for their stabilizabil-
ities using conditions (6.48-6.50). It is revealed that, these two manipulators are stabilizable
every where in their workspace. In other words, the spine force which keeps the cables in tension
always increases the total stiffness matrix in any arbitrary direction.
140
The second example is Falcon7 [2]. A schematic drawing of this manipulator is shown in
Fig. 6-5. The end-effector is restrained by 7 cables each of which connected to a winch actuated
by an electrical motor. The end-effector has 6 degrees of freedom while the seventh actuator
is redundant and is used to produce antagonistic forces in order to maintain the tension in all
cables. For this example, a typical Falcon7 with a footprint of 1m×1m and an end-effector’s
rod with a length of 1m is considered. For a fixed orientation of the end-effector as shown in the
figure, a workspace of 0.8m×0.8m×0.6m is spanned and the tensionability and stabilizability
are both examined. The tensionable workspace of the manipulator is shown in the same figure
by the gray shaded prism. By calculating Ka according to Eq. (6.38), It is revealed that the
manipulator is unstabilizable everywhere in its tensionable workspace. In other words, the active
stiffness of the manipulator is unstable and therefore, the total stiffness of the manipulator will
be unstable for sufficiently large antagonistic forces. However, it should be noted that even
for low antagonistic forces, the instability is possible if the cables’ stiffness (cables’ elasticity in
series with the actuators stiffness) becomes small. This may happen during the movement of
the manipulator where the cables’ stiffness is mostly determined by the proportional gains of
the closed-loop control system. In such cases, the manipulator show some intermittent erratic
motions.
The next example is a planar cable-based manipulator with three degrees of freedom shown
in 6-6. The end-effector is restrained by four cables each of which is pulled and collected by
an active winch. In the figure, the end-effector is shown in four different orientations. In each
orientation, all possible locations of the end-effector are examined for the stabilizability. The
stabilizability of the manipulator at each given location and orientation is investigated by both
calculating Ka and its eigenvalues for positive definiteness, and using the sufficient conditions
(6.48)-(6.50) which, for this case, simplifies to L < 0.
It is revealed that the manipulator is tensionable all over the workspace for the four orien-
tations and thus, the rigidity is maintained by antagonistic forces however, in many regions of
the workspace, the manipulator is not stabilizable. In Fig. 6-6, the points of the workspace
in which Ka has non-positive eigenvalues are shown by squares. These points represent the
unstabilizable poses of the manipulator. Using the sufficient condition, L < 0, the points at
which the condition does not hold true are determined and shown by black dots. The sufficient
141
end-effector
Tensionableworkspace
cableswinches &
motorsend-effector's rod
Z
X
Y
Figure 6-5: Falcon7 and its tensionable workspace for the given orientation of the end-effector.
142
condition provides a superset of the actual unstabilizable regions which is confirmed in all dia-
grams of Fig. 6-6. It is interesting to note that only a few black dots are not marked by black
squares which implies that the set of sufficient conditions derived in the last section is not too
conservative.
The same manipulator is studied again with a slightly different configuration for the cables
shown in Fig. 6-7. The idea of this change is arisen from the fact that if the angle between ui
and ri is greater than 90 then L decreases and hence, increases the chance of having negative
L which is the sufficient condition for the stabilizability. It is seen that the change in the cable
configuration does not make any difference in the tensionability of the manipulator however, it
has a major effect on its stabilizability. Fig. 6-7 shows that the unstabilizable region of all four
orientations have significantly reduced. As it was mentioned before, in the second manipulator,
two of the cables make wide angles with the position vectors of the anchor points which decrease
L. Although this argument is only correct for planar manipulator, it can be used as a rule of
thumb for designing of stabilizable spatial cable-based manipulators.
A similar manipulator is shown in Fig. 6-8 which is the last example of this section. This
manipulator in which the anchor points of the cables are changed is tensionable but unstabi-
lizable everywhere in its workspace. This manipulator becomes unstable for relatively small
internal forces.
For the stiffness of the cables, it is assumed that the manipulator is at rest and hence, the
actuation system is much stiffer than the cables. The stiffness coefficient of cables is assumed
to be 3.8× 103N/m for a 1 meter piece of the cable [47]. The cables’ tension are antagonistic
forces and therefore, due to Eq. (6.3), the vector of cable tensions, τ , should belong to the null
space of Jt. Since there is one degree of redundancy in this manipulator, the null space of Jt is
one dimensional and hence it can be spanned by a unit vector such as h :
τ = αh α > 0
where α is an arbitrary real positive value and determines the greatness of the cable tensions
such that:mXi=1
τ2i = α2
143
(a) (b)
(c) (d)
Figure 6-6: The stabilizability of a plannar cable-based manipulator in four different orientationsof the end-effector: a) 0, b) 10, c) 20, d) 30.
144
(a) (b)
(c) (d)
nu
nr
Figure 6-7: The effecot of change of the cable configuration on the stabilizablity. Orientaionsof the end-effector are a) 0, b) 10, c) 20, d) 30.
145
1m 0.1m
0.2m
1 2
34 p
Figure 6-8: A plannar cable-based manipulator which is unstabilizable everywhere and beomcesunstable for relatively small antagonisc forces.
146
For this example, α = 80N. For instance, the tensions in the cables when the center of the
end-effector is located at point p (shown in the Fig. 6-8) are:
τ1 = 52.8N, τ2 = 47.8N, τ3 = 26.6N, τ4 = 25N
For this situation, the active stiffness matrix is:
Ka =
⎡⎢⎢⎢⎣6.03 −1.24 −3.19
−1.24 14.4 1.53
−3.19 1.53 −139
⎤⎥⎥⎥⎦Since there is no external load on the end-effector, Kr is the same as the structural stiffness
which is found to be:
Kr = Ks =
⎡⎢⎢⎢⎣1212 66 −265
66 692 68
−265 68 206
⎤⎥⎥⎥⎦Although Kr seems much larger than Ka in terms of its components, the summation of these
two matrix is an unstable matrix whose eigenvalues are:
eig(Ka +Kr) = 1282, 712, − 1.9
which indicates that the manipulator is unstable.
6.5 Conclusion
In this chapter, the effects of cable tensions on the stiffness and stability of cable-based ma-
nipulators was studied. For this purpose, a new approach to derive the total stiffness of these
manipulators was introduced. This approach is based on a model of the manipulator in which
the overall stiffness is decomposed into two major parts: the stiffness due to the cables stiffness
(structural stiffness) and the stiffness due to the internal forces (active stiffness). The first
components is already shown to be symmetric and stable as long as all the cables stiffness are
non-negative. In this work, it was shown that the active stiffness which arises from the cable
147
forces has a rotational stiffness component which might not be stable even if all the cables are
in tension. In the worst case, this unstable component dominates the total stiffness and results
in the instability of the manipulator.
In order to study how and under what conditions this instability can be overcome, stabiliz-
ability was defined as a property for cable-based manipulators. A cable-based manipulator is
called stabilizable if the overall stiffness matrix can be always made stable (positive definite)
by the help of antagonistic forces. The significance of this property is that it shows whether
by increasing the antagonistic forces the overall stiffness of the manipulator always increases
(moves towards stability) or may even decreases (moves away from stability).
It was proved that the stabilizability is obtained if and only if the stiffness caused by the
antagonistic forces is positive definite and hence, stable. Therefore, in general and for a spatial
cable-based manipulator the six-by-six stiffness matrix which is caused by antagonistic forces
should be formed and showed to be positive definite. As an alternative, a set of sufficient
conditions which are much easier to calculate were proposed. If these conditions hold true, the
manipulator is stabilizable.
The issue of stabilizability was examined in several examples by studying planar and spatial
cable-based manipulators. It was shown that the tensionability of the manipulator (all cables
can be kept in tension) is completely independent from its stabilizability. In the last example it
was shown that an unstabilizable manipulator becomes unstable by relatively small antagonistic
forces in the cables. The sufficient conditions proposed in this chapter were showed to provide
some rules of thumb for designing stabilizable manipulators. It was also shown that DeltaBot
and BetaBot are two examples of stabilizable manipulators everywhere in their workspace.
148
Chapter 7
Conclusion
In this thesis, new designs of cable-based manipulators were introduced and the fundamental
problems of using cables in the structure of robotic manipulators were addressed. Most of the
results and approaches developed in this thesis are general and not limited to the cable-based
robots studied in this work. The new contributions of this research are summarized in the
following:
1. Several new cable-based manipulators with pure translational motion were introduced.
These manipulators have simple structures with minimum number of joints and minimal
inertia. The pretension in the cables are produced by an element called spine which
applies a constant force to the end-effector. As a result, these manipulators do not need
any extra actuator for pretensioning the cables.
2. The concept of tensionability was developed as an efficient approach for rigidity study
of the cable-based manipulators. Tensionability reflects the ability of the manipulator to
maintain the tension in the cables under any arbitrary loading and hence, is independent
from the external load. It was also proved that the tensionability of most of the cable-
based manipulators, introduced in this work, are pose independent meaning that they can
maintain their rigidity everywhere in their workspace.
3. An optimum design procedure was developed for the force/torque capacity of cable-based
manipulators. Since the pretension of the cable-based manipulators is provided by a
constant force (spine force), the set of forces/torques that the end-effector can apply
149
before loosing the rigidity is limited. This set of forces/torques constitute the force/torque
capacity of the manipulator and was modeled by convex volumes using a geometrical
approach. It was shown how this volume can be tailored such that it accommodates any
desired set of forces/torques required for the robot’s mission. The design problem of the
force/torque capacity was solved and a closed form solution was found.
4. The time optimal trajectory planning technique which has been developed for rigid-link
manipulators was enhanced to include the cable tension constraint. Using the Lagrange’s
multipliers, the cable tensions were presented in the dynamics model and their constraint
on the permissible acceleration of the end-effector were derived. It was shown that al-
though this technique finds the shortest trajectory and fastest motion for the robot, it
suffers from computational complexity mostly because of the nonlinear and coupled kine-
matics equations. A non-optimal trajectory planning technique was also introduced and
it was shown that, at least for the standard pick-and-place path, the loss of the optimality
is a bearable price for the gain in the computational efficiency.
5. The stability problem of cable-based manipulators that is a consequence of the internal
cable tensions (antagonistic forces) was studied. It was shown that a cable-based manip-
ulator, may become unstable only because of the cable tensions when there is no external
load. This study was conducted by introducing the concept of stabilizability. A stabiliz-
able manipulator becomes stiffer upon increasing the cables pretension. The converse is
that an unstabilizable manipulator will be eventually unstable upon increasing the cable
tensions. Several examples of unstabilizable manipulators were given. The exact eval-
uation of the stabilizability of a manipulator was shown to require the eigenvalues of a
stiffness matrix to be found. As an alternative, a set of simpler sufficient conditions was
derived for the stabilizability of a manipulator.
A new cable-based manipulator called DeltaBot was also prototyped to experimentally verify
some of the results. This manipulator is designed for high-speed pick-and-place applications
and performs 120 pick-and-place standard cycles.
This research has tried to elaborate on the potential of cable-based manipulators in real ro-
botic applications by addressing and resolving some of their fundamental problems. However,
150
it is important to notice that besides the theoretical challenges, there are many technological
problems involved with the use of cables in robotic manipulators mostly because such an ap-
plication is relatively new to the cable industry. For instance there is no efficient solution for
the guiding holes used to reorient the cables (used in BetaBot). The current solutions either
involve a sliding contact between the cable and the guide which is not feasible for high-speed
applications and also results in excessive wear or they use pulleys which provide only one axis
of rotation for the cable. The type of the cables and their fatigue properties are other issues
which are essential to the lifetime of these manipulators. As a result and in order to have these
manipulators compete in the market with rigid-link robots, both theoretical and technological
aspects should be included in the future studies.
151
Appendix A
Dynamic Model of DeltaBot
A dynamic model for DeltaBot is developed here using the Lagrange’s method. This model
is intended to be used for the time-optimal path planning. Therefore, the model should be
capable of providing the internal forces of all cables. For this puropose, each cable is assumed
as a virtual cylinder that provides some tension to keep the length of the cable constant. As a
result, the force of the virtual cylinders gives the tension in the cables. We first develop this
model and derive the equations. It will be shown that this model has six non-linear algebraic
equations to be solved simultanously with the differential equations. Since, six constraint
equations significantly reduces the computational efficiency of the model, they are replaced
later by three equations using the fact that the end-effector has only translational motions.
A partial schematic diagram of DeltaBot is shown in Fig. A-1. The figure shows one of
the limbs, base, end-effector and the spine. The following simplifications are considered in this
model:
1. All the friction forces are ignored,
2. The mass of the cables are negligible,
3. The mass of the spine’s shaft is lumped at the top end of the shaft.
The coordinate system is located at the lower end of the spine. The notations used in the
model are as follows:
152
X
YZ
a
R
r
iγ
iβ
il1il2
2w
base
end-effector
ma, Ia
mc,Ico
O
msX~
Y~Z~
lc
iγ
Ai
Bi
Figure A-1: One of the three limbs of DeltaBot
153
Variables:
x, y, z Location of the center of the end effector determined in the
fixed coordinate system
φ, θ,ψ Euler angles of the end-effector
βi Angle of the ith arm measured from the base
l1i, l2i Lengths of the cables of the ith limb (virtually variable)
Forces:
fs = (fsx, fsy, fsz)T Spine force applied at the center of the end-effector
τ1, τ2, τ3 Actuators’ torque applied at the rotating arms
t1, t2, ..., t6 Cable tensions
Parameters:
r Radius of the end-effector
R Radius of the base
a Length of the arms
b Length of the cables
2w Distance between each pair of cables
γi Angular postion of the ith limb, i = 1, 2, 3
ma, Ia Mass and moment of inertia of the arms
ms Mass of the spine’s shaft
mc Mass of the spine cylinder
lc Length of the spine cylinder
Ico Moment of inerita of the spine with respect to its lower end
me Mass of the end-effector
Ixx, Iyy, Izz Moments of inertia of the end-effector
Coordinate systems:
XY Z The fixed coordinate system attached to the center of the base
XY Z The moving system of coordinate attached to the center of the
end-effector
T (φ, θ,ψ) The transformation matrix from the moving coordiante system to
the fixed one
154
The coordinate varibles of the model are:
q = (β1,β2,β3, l11, l21, l12, l22, l13, l23, (A.1)
x, y, z,φ, θ,ψ)T
The angular velocity of the end-effector determined in the moving coordinate system, XY Z, is:
ω =
⎡⎢⎢⎢⎣ωx
ωy
ωz
⎤⎥⎥⎥⎦=⎡⎢⎢⎢⎣sin(θ) sin(ψ) cos(ψ) 0
sin(θ) cos(ψ) − sin(ψ) 0
cos(θ) 0 1
⎤⎥⎥⎥⎦⎡⎢⎢⎢⎣
φ
θ
ψ
⎤⎥⎥⎥⎦The Lagrangian is defined as:
L = KE − PE (A.2)
where KE and PE are kinetic and potential energy of the manipulator, respectively. The
kinetic energy of the manipulator is:
KE =1
2me(x
2 + y2 + z2) +1
2
¡Ixxω
2x + Iyyω
2y + Izzω
2z
¢+
1
2
µIa +
a2
4ma
¶³β21 + β
22 + β
23
´+
1
2Icox2 + y2 + z2
x2 + y2 + z2+ms
¡x2 + y2 + z2
¢(A.3)
where the first, second and third line of Eq.(A.3) express the kinetic energy of the end-effector,
rotating arms and the spine, respectively.
The potential energy of the manipulator which is due to the gravity force is found to be:
PE = −megz
−maga
2(sinβ1 + sinβ2 + sinβ3)
−msgz −mcglc/2p
x2 + y2 + z2(A.4)
It should be noted that since DeltaBot is usually mounted upside down, the direction of the
gravity force is the same as the z-axis and therefore, a negative sign shows up before all terms.
155
It is known that the manipulator has originally 3 dof which is increased to 9 by conisdering
the cables as linear actuators. Since there are 15 coordinate variables in Eq. (A.1), 6 constraint
equations should be found. These constraints are obtained by expressing the cables’ lengths in
terms of the other coordinate variables. For this purpose, a vector closure equation is written
for each cable. For the two cables shown in Fig. A-1, we have:
l21i =°°°(x, y, z)T + T (R cos(γi), R sin(γi), 0)T + T (w cos(γi − π
2), w sin(γi −
π
2), 0)T
− (w cos(γi −π
2), w sin(γi −
π
2), 0)T − (a cos(βi) cos(γi), a cos(βi) sin(γi), a sin(βi))T
− (r cos(γi), r sin(γi), 0)T°°2 (A.5)
l22i =°°°(x, y, z)T + T (R cos(γi), R sin(γi), 0)T + T (w cos(γi + π
2), w sin(γi +
π
2), 0)T
− (w cos(γi +π
2), w sin(γi +
π
2), 0)T − (a cos(βi) cos(γi), a cos(βi) sin(γi), a sin(βi))T
− (r cos(γi), r sin(γi), 0)T°°2 (A.6)
where i = 1, 2, 3 and hence, 6 constraint equations are resulted that can be shown as Γ6×1 = 0.
Finally, the Lagrange’s equations of motion are found as:
d
dt
µ∂L
∂q
¶− ∂L
∂q= f + Γqλ (A.7)
where λ6×1 is the vector of Lagrange’s multiplier and f =(τ1, τ2, τ3, t1, t2, ..., t6, fsx, fsy, fsz, 0, 0, 0)T
is the vector of generalized forces. Eq. (A.7) should be solved with the constraint equations
Γ6×1 = 0. However, as it was mentioned before, the system of equations can be simplified by
reducing the number of the generalized coordinate and constraint equations.
The generalized coordinates in Eq. (A.7) can be reduced by considering that the end-effector
has no rotational motion and also the lengths of the cables are constant and equal to b :
φ = φ = θ = 0 (A.8)
l1i = l2i = b i = 1, 2, 3 (A.9)
It should be also noted that all the derivatives of the above mentioned variables are equal to
zero. Therefore, by substituting Eq. (A.8) and (A.9) and their derivatives in Eq. (A.7), the
156
number of the generalized coordinates are reduced from 15 to 6 that are x, y, z (position of the
end-effector) and β1,β2,β3 (angles of the rotating arms).
Since the manipulator has only three degrees of freedom, three constraint equations are
required. According to Fig. A-1, these constraint equations are:
Γi = AiBi2 − b2
= (x+R cos(γi)− r cos(γi)− a cos(γi) cos(βi))2
+(y +R sin(γi)− r sin(γi)− a sin(γi) cos(βi))2
+(z − a sin(βi))2 − b2
= 0 i = 1, 2, 3 (A.10)
As a final result, the dynamic model of DeltaBot which includes the cables tensions is obtained
by differential equations (A.7) and algebraic constraint equations (A.10).
157
Bibliography
[1] Landsberger S.E. and Sheridan T.B., “A minimal, minimal linkage: The tension compres-
sion parallel link manipulator,” in Proceedings of IMACS/SICE International Symposium
on Robotics, Mechatronics and Manufacturing Systems, pp. 81—88. 1993.
[2] Kawamura S., Choe W., and Tanak S. Pandian S.R., “Development of an ultrahigh speed
robot falcon usign wire driven systems,” in IEEE International Conference on Robotics
and Automation, pp. 215—220. IEEE, 1995.
[3] Tadokoro S., Nishioka S., Kimura T., Hattori M., Takamori T., and Maeda K., “On funda-
mental design of wire configuration of wire-driven parallel maniplators with redundancy,”
in Proceedings of Japan/USA Symposium on Flexible Automation, pp. 151—158. ASME,
1996.
[4] Jean-Pierre Merlet, Parallel Robots, Kluwer Academic Publishers, Netherland, first edition,
2000.
[5] Stewart D., “A platform with six degreed of freedom,” in Proceedings of institute of
mechanical Engineers, pp. 371—386. London, 1965.
[6] Gough V.E and Whitehall S.G., “Universal tyre test machine,” in Proceedings of 9th
International Technical Conference F.I.S.I.T.A, pp. 117—135. 1962.
[7] Hunt K.H., Kinematic Geometry of Mechanisms, Clarendon Press, Oxford, 1978.
[8] Hunt K.H., “Structural kinematics of in-parallel- actuated robot-arm,” Journal of Mech-
anisms, Transmission, and Automaion in Design, vol. 105, pp. 705—712, December 1983.
158
[9] Muller A. and Maiber P., “Kinematic and dynamic properties of parallel manipulators,”
Journal of Multibody System Dynamics, vol. 5, pp. 223—249, 2001.
[10] Gosselin C.M. and Angeles J., “Singularity analysis of closed-loop kinematic chains,” IEEE
Transactions on Robotics and Automation, vol. 6, no. 3, pp. 281—290, June 1990.
[11] Fichter E.F, “Kinematics of a parallel connection manipulator,” in Proceeding of ASME
Design Engineering Technology, pp. 1—8. ASME, 1984.
[12] Merlet J-P., “Singular configurations of parallel manipulators and grassmann geometry,”
International Journal of Robotics Research, vol. 8, no. 5, pp. 45—56, October 1989.
[13] Clavel R., Conception d’un robot parallele rapide a 4 degres deliberte PhD Thesis, EPFL,
Lausanne, 1991.
[14] Barrete G. and Gosselin C.M., “Kinematic analysis and design of planar parallel mecha-
nisms actuated with cables,” in Proceeding of ASME Desing Engineering Technical Con-
ferences, pp. 391—399. ASME, 2000.
[15] Albus J., Bostelman R., and Dagalakis N., “The nist robocrane,” Journal of Robotic
Systems, vol. 10, no. 5, pp. 709—724, 1993.
[16] Ferraresi C., Paoloni M., Pastorelli S., and Pescarmona F., “A new 6-dof parallel robotic
structure actuated by wires: The wiro-6.3,” Journal of Robotic Systems, vol. 21, no. 11,
pp. 581—595, 2004.
[17] Su Y.X., Duan Y., Nan R.D., and Peng B., “Development of a large parallel-cable manip-
ulator for the feed-supporting system of a next-generation large radio telescope,” Journal
of Robotic Systems, vol. 18, no. 11, pp. 633—643, 2001.
[18] Wendlandt J.M. and Sastry S.S., “Design and control of simplified stewart platform for
endoscopy,” in Proceedings of the 33rd Conference on Decision and Control, pp. 357—362.
IEEE, 1994.
[19] Wells F.E. and Huntsville A., “Remote control manipulator for zero gravity environment,”
United States Patent No. 3,631,737, 1970.
159
[20] Anderson V.C., “Tensor arm manipulator,” United State Patent No. 3,497,083, 1970.
[21] Jeong W.J., Kim H.S., and Kwak Y.K, “Kinematics and workspace analysis of a parallel
wire mechanism for measuring a robot pose,” Journal of Mechanism and Machine Theory,
vol. 34, pp. 825—841, 1999.
[22] Kawamura S., Ida M., Wada T., and Wu J-L., “Development of a virtual sports machine
using a wire drive system - a trial of virtual tennis -,” in Proceedings of the International
Conference on Intelligent Robots and Systems, pp. 111—116. IEEE, 1995.
[23] Kawamura S. Ito K., “A new type of master robot for teleoperation using a radial wire drive
system,” in Proceedings of the 1993 IEEE/RSJ International Conference on Intelligent
Robots and Systems, pp. 55—60. IEEE, 1993.
[24] Ming A. and Higuchi T., “Study on multiple degree-of-freedom positioning mechanism
using wires (part1),” International Journal of Japan Society of Precision Engineering, vol.
28, no. 2, pp. 131—138, 1994.
[25] Mianowski K. and Nazarczuk K., “Parallel drive of manipulator arm,” in 8th RoManSy,
pp. 140—147. 1990.
[26] Neumann K.E., “Robot,” United States Patent No. 4,732,525, 1988.
[27] McCallion H. and Pham D.T., “The analysis of a six degrees of freedom work station for
mechanized assembly,” in Proceedings of 5th World Congress on Theory of Machines and
Mechanisms, pp. 611—616. 1979.
[28] Shelef G., “Six degrees of freedom micromanipulator,” United States Patent No. 4,819,496,
1989.
[29] Tadokoro S., Nishioka S., and Kimura T., “On fundamental design of wire configura-
tions of wire-driven parallel manipulators with redundancy,” in Proceeding of Japan/USA
Symposium on Flexible Automation, pp. 151—158. ASME, 1996.
[30] Dagalakis N.G. and al., “Stiffness analysis of a parallel link robot crane for shipbuilding
applications,” Journal of Offshore Mechanics and Arctic Engineering, vol. 111, pp. 183—
193, 1989.
160
[31] Landsberger S.E. and Shanmugasundram P., “Workspace of a parallel link crane,” in Pro-
ceedings of IMACS/SICE International Symposium on Robotics, Mechatronics and Man-
ufacturing Systems, pp. 479—486. 1992.
[32] Bostelman R., Jacoff A., Proctor F., and Kramer T., “Cable-based reconfigurable machines
for large scale manufacturing,” in Proceedings of the 2000 Japan-USA Symposium on
Flexible Automation, International Conference on New Technological Innovation for the
21st Century, Ann Arbor, Michigan July 23-26. 2000.
[33] Osumi H., Utsugi Y., and Koshikawa M., “Development of a manipulator suspended by
parallel wire structures,” in Proceedings of the 2000 IEEE/RSJ International Conference
on Intelligent Robots and Systems, pp. 498—503. IEEE, 2000.
[34] ,” .
[35] Tsai L-W., Robot Analysis, The mechanics of Serial and Parallel Manipulators, John
Wiley and Sons, 1999.
[36] Salisbury J.K., Kinematic and Force Analysis of Articulated Mechanical Hands, Ph.D.
dissertation, Mechanical Engineering, Stanford University, Stanford CA, 1982.
[37] Rouff C.F. and Salisbury J.K., “Multi-fingered robotic hand,” United States Patent
4,921,293, 1990.
[38] Salisbury J.K. and Craig J.J., “Articulated hands: Force control and kinematic issues,”
International Journal of Robotics Research, vol. 1, no. 1, pp. 4—17, 1982.
[39] Jacobsen S.C., Wood J.E., Knutti D.F., and Biggers K.B., “The utah/mit dextrous hand:
Work in progress,” International Jounrnal of Robotics Research, vol. 3, no. 4, pp. 21—50,
1984.
[40] Jacobsen S.C., Iversen E.K., Knutti D.F., Johnsn R.T., and Biggers K.B., “The design
of the utah/mit dextrous hand,” in Proceedings of IEEE International Conference on
Robotics and Automation, pp. 1520—1532. IEEE, 1986.
[41] Gary Diamond, “Robotic devices,” United States Patent 4,683,773, 1987.
161
[42] Parushev P. and Chakarov D., “Structural investigation of manipulators with linear
drives,” in 8th RoManSy, pp. 148—155. 1990.
[43] Williams II, Robert L., Albus J.S., and Bostelman R.V., “Cable-based metrology sys-
tem for sculpting assistance,” in Proceedings of the ASME Design Engineering Technical
Conference, pp. 1165—1174. ASME, 2003.
[44] Williams II, Robert L., Albus J.S., and Bostelman R.V., “3d cable-based cartesian metrol-
ogy system,” Journal of Robotic Systems, vol. 21, no. 5, pp. 237—257, May 2004.
[45] Ming A. and Higuchi T., “Study on multiple degree-of-freedom positioning mechanism
using wires (part1),” International Journal of Japan Society of Precision Engineering, vol.
28, no. 2, pp. 131—138, 1994.
[46] Nguyen V.D., “Constructing force-closure grasps in 3d,” in Proceedings of IEEE Interna-
tional Conference on Robotics and Automation, pp. 240—245. IEEE, 1987.
[47] Kawamura S., Kino H., and Choe W., “High-speed manipulation by using parallel wire
driven robots,” Robotica, vol. 18, pp. 13—21, 2000.
[48] Choe W., Kino H., , Katsuta K., and Kawamura S., “A design of parallel wire driven robots
for ultrahigh speed motion based on stiffness analysis,” in Proceedings of Japan/USA
Symposium on Flexible Automation, pp. 159—166. ASME, 1996.
[49] Khajepour A, Behzadipour S., and Dekker R., “Light weight parallel manipulators
using active/passive cables,” United States Patent No. 10/615,595 and PCT No.
PCT/CA03/00987, 2002.
[50] Yamaguchi F., A Totally Four-diemnsional Approach / Computer-Aided Geometric Design,
Springer-Verlag, Tokyo, 2002.
[51] Tsai L-W., “Kinematics of a three dof platform with three extensible limbs,” in Recent
Advances in Robot Kinematics, Lenarcic J. and Parenti-Castelli V., Eds., pp. 401—410.
Kluwer Academic, 1996.
162
[52] Stoughton R.S. and Arai T., “A modified stewart platform manipulator with improved
dexterity,” IEEE Transaction on Robotics and Automation, vol. 9, no. 2, pp. 166—173,
1993.
[53] Sommerville D.M.Y., Analytical geometry of three dimensions, Cambridge The University
Press, 1934.
[54] Dekker R.A., Design and Testing of an Ultra High-speed Cable-based Parallel Robot, MS.c.
Thesis, University of Waterloo, Waterloo, 2003.
[55] Dekker R., Khajepour A., and Behzadipour S., “Design and testing of an ultra high-speed
cable robot,” to appear in the International Journal of Robotics and Automation.
[56] M.E. Kahn and B. Roth, “The near-minimum-time control of open-loop articulated kine-
matic chains,” ASME Journal of Dynamic Systems, Measurements, and Control, vol. 93,
pp. 164—172, Sept. 1971.
[57] K.G. Shin and N.D. McKay, “Selection of near-minimum time geometric paths for robotic
manipulator,” IEEE Transactions on Automation and Control, vol. 31, no. 6, pp. 501—511,
1986.
[58] L.S. Pontryagin, V.G. Boltyanski, R.V. Gramkrelidze, and E.F. Mishchenko, The Mathe-
matical Theory of Optimal Processes, John Wiley, New York, 1962.
[59] M. Niv and D.M. Auslander, “Optimal control of a robot with obstacles,” in Proceeding
of American Control Conference, pp. 280—287. 1984.
[60] J.E. Bobrow, S. Dubowsky, and J.S. Gibson, “Time-optimal control of robotics manipula-
tors along specified paths,” International Journal of Robotics Research, vol. 4, no. 3, pp.
3—17, 1985.
[61] K.G. Shin and N.D. McKay, “Minimum-time control of robotic manipulators with geo-
metric path constraints,” IEEE Transactions on Automation and Control, vol. 30, no. 6,
pp. 531—541, 1985.
163
[62] K.G. Shin and N.D. McKay, “Robust trajectory planning for robotic maipulators under
payload uncertainties,” IEEE Transaction on Automation and Control, vol. 32, no. 12, pp.
1044—1054, 1987.
[63] K.G. Shin and N.D. McKay, “A dynamic programming approach to trajectory planning of
robotic manipulator,” IEEE Transaction on Automation and Control, vol. 31, no. 6, pp.
491—500, 1986.
[64] Z. Shiller and S. Dubowsky, “Robot path planning with obstacles, actuators, gripper, and
payload constraints,” International Journal of Robotics Research, vol. 8, no. 6, pp. 3—18,
1989.
[65] D. Constantinescu and E. A. Croft, “Smooth and time-optimal trajectory planning for
industrial manipulators along specified paths,” Journal of Robotic Systems, vol. 17, no. 5,
pp. 233—249, 2000.
[66] O. Dahl and L. Nielsen, “Torque-limited path following by on-line trajectory time scaling,”
IEEE Transactions on Robotics and Automations, vol. 6, no. 5, pp. 554—561, 1990.
[67] de Boor C., Box Splines, Springer Verlg, New York, 1 edition, 1993.
[68] Farouki R. and Sakkalis T., “Real rational curves are not Sunit speedŠ,” Computer Aided
Geometric Design, vol. 8, pp. 151—157, 1991.
[69] Gosselin C.M., “Stiffness mapping for parallel manipulators,” IEEE Transaction on Ro-
botics and Automation, vol. 6, no. 3, pp. 377—382, 1990.
[70] B.S. El-Khasawneh and P.M. Ferreira, “Computation of stiffness and stiffness bounds for
parallel link manipulators,” International Journal of Machine and Manufacture, vol. 39,
no. 2, pp. 321—342, February 1999.
[71] Verhoeven R., Hiller M., and Tadokoro S., “Workspace, stiffness, singularities and classi-
fication of tendon-driven stewart platforms,” in Advances in Robot Kinematics Analysis
and Control, Lenar J. and Husty L., Eds., pp. 105—114. Kluwer Academic, 1998.
[72] Hanafusa H. and Adli M.A., “Effect of internal forces on stiffness of closed mechanisms,”
in Proceedings of 5th International Conference on Advanced Robotics, pp. 845—850. 1991.
164
[73] Griffis M. and Duffy J., “Global stiffness modeling of a class of simple compliant couplings,”
Mechanisms and Machine Theory, vol. 28, no. 2, pp. 207—224, 1993.
[74] Ciblak N. and Lipkin H., “Centers of stiffness, compliance and elasticity in the modeling
of robotics systems,” in ASME Design Technical Conference DE-72, Pennock G. R., Ed.,
pp. 185—195. ASME, 1994.
[75] Svinin M. M., Ueda K., and Uchiyama M., “On the stability condition of a class of parallel
manipulators,” in International Conference on Robotics and Automation, pp. 2386—2391.
IEEE, 2000.
[76] Svinin M. M., Hosoe S., and Uchyiama M., “On the stiffness and stability of gough-stewart
platforms,” in International Conference on Robotics and Automation, pp. 3268—3273.
IEEE, 2001.
165