robotics: mechanics & control chapter 4: differential
TRANSCRIPT
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Chapter 4: Differential KinematicsIn this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
Robotics: Mechanics & Control
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
WelcomeTo Your Prospect Skills
On Robotics :
Mechanics and Control
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
About ARAS
ARAS Research group originated in 1997 and is proud of its 22+ years of brilliant background, and its contributions to
the advancement of academic education and research in the field of Dynamical System Analysis and Control in the
robotics application.ARAS are well represented by the industrial engineers, researchers, and scientific figures graduated
from this group, and numerous industrial and R&D projects being conducted in this group. The main asset of our
research group is its human resources devoted all their time and effort to the advancement of science and technology.
One of our main objectives is to use these potentials to extend our educational and industrial collaborations at both
national and international levels. In order to accomplish that, our mission is to enhance the breadth and enrich the
quality of our education and research in a dynamic environment.
01
Get more global exposure Self confidence is the first key
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
4
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Introduction
โข Preliminaries
Angular Velocity of a Rigid Body
Attribute of the whole rigid body
The rate of instantaneous rotation of frame {๐ต} attached
to the rigid body with respect to a fixed frame {๐ต}.
A vector denoted by ๐ along the screw axis
With the value equal to the rate of rotation แถ๐.
Angular velocity vector can be expressed in any frame:
In which, ฮฉ๐ฅ , ฮฉ๐ฆ, ฮฉ๐ง are the components of this vector.
5
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
Angular Velocity & Rotation Matrix Rate
Angular velocity is defined based-on screw representation
What is its relation to the rotation matrix representation?
Note that
Differentiate both side with respect to time
Substitute:
This means that is a 3 ร 3 skew symmetric matrix ๐ร:
It can be shown that the three parameters ฮฉ๐ฅ , ฮฉ๐ฆ, ฮฉ๐ง are the components of
angular velocity vector.
6
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Angular Velocity & Euler Angles Rate
Angular velocity is a vector but Euler angels are not.
Angular velocity is not equal to the rate of Euler Angels
But
Use
Or equivalently
To derive ๐ธ(๐ผ, ๐ฝ, ๐พ). For example for ๐ค โ ๐ฃ โ ๐ค Euler angles we have:
and
Preliminaries
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
Linear Velocity of a Point
Linear velocity of a point ๐ท is the time derivative of the position
vector ๐ with respect to a fixed frame.
Relative velocity with respect to a moving frame is denoted by
In which the partial derivative notation is used to denote relativeness
Golden Rule
OR
In which ๐ denotes the angular velocity of the moving frame with respect to
the fixed frame, and ๐ร denotes its skew-symmetric matrix representation
8
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
Linear Velocity of a Point
Verify the derivative of the rotation matrix
While
Hence,
This verifies the relation of angular velocity vector with the rate of
rotation matrix
9
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
Linear Velocity of a Point
Consider the position vector ๐ท
Differentiate with respect to time
where
The time derivative of rotation matrix is given
Hence,
If ๐ท is embedded in the rigid body, the relative velocity is zero. Then
10
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
โข Twist: Screw Coordinates
General Motion: Screw Representation
General Motion =
Rotation about เท๐ + Translation along เท๐
เท๐, ๐ + {๐๐, ๐}
Assume the ratio of ๐ to ๐ is denoted by pitch ๐
๐ =๐
๐or ๐ =
แถ๐
แถ๐in (๐๐๐/๐) unit
Define Screw Coordinate (6 ร 1)
Unit Screw coordinate $ by pair of two vectors:
In which ๐ 0 could be selected on any arbitrary point on the axis เท๐.
11
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
โข Twist: Screw Coordinates
General motion of a point ๐ท on the rigid body
Twist: A (6 ร 1) Tuple
Twist =Angular velocity of the rigid bodyLinear velocity of the point ๐ท
=ฮฉแถ๐
To find the screw for point ๐ท, attach an instantaneous fixed frame
On point P aligned with the reference frame {0} then
Twist: $ = แถ๐ $
In which, the first vector reads:
and the second vector is:
This gives the linear velocity of the interested embedded point ๐ท on the rigid body
12
๐ท
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
โข Twist: Screw Coordinates
General motion of a point ๐ท on the rigid body
To find the screw for point ๐ท, attach an instantaneous fixed frame
On point ๐ท aligned with the reference frame {0} then
Twist =Angular velocity of the rigid bodyLinear velocity of the point ๐ท
=ฮฉแถ๐
Both vectors with respect to the fixed frame {0}
Screw coordinate
Twist: $ = แถ๐ $ = แถq
13
๐ท
๐ง0
๐ฆ0๐ฅ0
๐ง0๐ฆ0
๐ฅ0 ๐ท
๐ค
๐ฃ
๐ข
แถ๐$
๐0
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Preliminaries
โข Twist: Screw Representation
Twist for Revolute joint (R)
For pure rotational joint ๐ = 0 and แถ๐ = แถ๐
The twist is represented by
where, instantaneous frame {0} is attached on point ๐ท
For pure translational joint ๐ = โ and แถ๐ = แถ๐
The twist is represented by
Since we use the primary joint in serial
manipulators these two screw representations
are used in the differential kinematics.
14
Consider the angular and linear
velocity of a point ๐ท in a circular
disk with rotary joint
$ =เท๐
๐0 ร เท๐แถ๐
=๐
๐ ร (โ๐0)
=๐
๐ ร ๐น
๐๐ ๐๐๐ = ๐
๐๐ = ๐ ร ๐น
Consider a point ๐ท on a moving piston:
$ =๐เท๐
แถ๐ โ๐๐ = ๐
๐๐ = แถ๐เท๐
๐
แถ๐
๐๐
๐ท
๐น
๐ง0
๐ฆ0๐ฅ0
แถ๐เท๐๐ท
๐ง0
๐ฆ0๐ฅ0
๐ค ๐ฃ
๐ข
๐ง0
๐ฆ0๐ฅ0
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
15
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Definition
Differential Kinematic Map
Forward Map Inverse Map
Given แถ๐ find แถ๐ Given แถ๐ find แถ๐
Forward kinematics is a nonlinear map
๐๐ = ๐๐ ๐1, ๐2, โฆ , ๐๐ for ๐ = 1,2,โฆ , ๐
Take time derivative:
แถ๐ = ๐ฑ(๐) แถ๐ , in which, ๐ฑ(๐) =
๐๐1
๐๐1
๐๐1
๐๐2โฏ
๐๐1
๐๐๐
โฎ โฑ โฎ๐๐๐
๐๐1
๐๐๐
๐๐2โฏ
๐๐๐
๐๐๐
is called the Jacobian matrix
16
Joint Space
แถ๐
Task Space
แถ๐
๐ฑ
๐ฑโ
แถ๐ = ๐ฑ(๐) แถ๐
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Motivating Example
Direct approach
Consider 2R manipulator
Denote แถ๐ = แถ๐1, แถ๐2๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ๐
Forward Kinematics:
๐ฅ๐ = ๐1๐1 + ๐2๐12๐ฆ๐ = ๐1๐ 1 + ๐2๐ 12
Take time derivative:
แถ๐ฅ๐ = โ๐1๐ 1 แถ๐1 โ ๐2๐ 12( แถ๐1 + แถ๐2)
แถ๐ฆ๐ = ๐1๐1 แถ๐1 + ๐2๐12( แถ๐1 + แถ๐2)
Determine Jacobian:
แถ๐ = ๐ฑ แถ๐ , in which, ๐ฑ =โ๐1๐ 1 โ ๐2๐ 12 โ๐2๐ 12๐1๐1 + ๐2๐12 ๐2๐12
17
๐ = ๐ฅ๐ , ๐ฆ๐๐
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Definition
In General
แถ๐ = แถ๐1, แถ๐2, โฆ , แถq๐๐ in which แถ๐๐ = เต
แถ๐๐ for a revolute jointแถ๐๐ for a prismatic joint
While for the task space variable
แถ๐ = แถ๐ =๐๐ธ๐๐ธ
For Conventional Jacobian and
แถ๐ = แถ๐ =๐๐ธ
๐๐ธFor Screw-based Jacobian
In which ๐๐ธ is the velocity of the end effector, ๐๐ธ denotes the angular velocity of the end effector
link.
Linear velocity and angular velocity sub-Jacobians
แถ๐ =๐๐ธ๐๐ธ
= ๐ฑ ๐ แถ๐ =๐ฑ๐๐ฑ๐
แถ๐
In which ๐ฑ๐ corresponds to the linear velocity Jacobian,
While๐ฑ๐ corresponds to the angular velocity Jacobian.
18
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Definition
In General
แถ๐ = แถ๐1, แถ๐2, โฆ , แถq๐๐ and แถ๐ = แถ๐ =
๐๐ธ๐๐ธ
The joint and task variable can be given with reference to any frame
Hence,
0 แถ๐ = 0๐ฑ 0 แถ๐ or ๐ แถ๐ = ๐๐ฑ ๐ แถ๐
In which
From
We may conclude :
19
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
๐ = ๐ฅ๐ , ๐ฆ๐๐
Jacobian
โข Motivating Example
Different Frames
Consider task variables in end โ effector frame {2}
Denote แถ๐ = แถ๐1, แถ๐2๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ๐
While in base frame: 0๐ฑ =โ๐1๐ 1 โ ๐2๐ 12 โ๐2๐ 12๐1๐1 + ๐2๐12 ๐2๐12
In frame {2}: 2๐ฑ = 20๐น 0๐ฑ =
๐12 โ๐ 12๐ 12 ๐12
โ๐1๐ 1 โ ๐2๐ 12 โ๐2๐ 12๐1๐1 + ๐2๐12 ๐2๐12
2๐ฑ = โฏ =๐1๐ 2 0
๐1๐2 + ๐2 ๐2
Note: Although the appearance is different, the invariant properties of the
Jacobians are the same, i.e.
๐๐๐ก 0๐ฑ = โ๐1๐2๐ 1๐12 โ ๐22๐ 12๐12 + ๐1๐2๐1๐ 12 + ๐2
2๐12๐ 12 = ๐1๐2๐ 2๐๐๐ก 2๐ฑ = ๐1๐2๐ 2 = ๐๐๐ก 0๐ฑ
20
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Conventional Jacobian:
General Derivation Method
แถ๐ = ๐ฑ ๐ แถ๐ =๐ฑ๐๐ฑ๐
แถ๐
In which
Where as shown in the figure is defined as a vector from origin of the (๐ โ 1) link
frame to the origin of the end effector frame (๐)
All the vectors shall be expressed in the frame of interest.
21
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Conventional Jacobian:
General Derivation Method
To derive the Jacobian
The direction and location of each
joint shall be determined.
Where,
Denotes the vector ๐๐โ1๐๐ expressed in frame {๐ โ 1}.
22
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Conventional Jacobians
โข Examples:
Example 1: Planar RRR Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ , แถ๐๐
First compute the vectors ๐๐โ1and , for ๐ = 1,2,3
Hence แถ๐ = ๐ฑ แถ๐ where,
Note Jacobian of the wrist position ๐ท will be:
23
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Conventional Jacobians
โข Examples:
Example 2: SCARA Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3, แถ๐4๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ , แถ๐ง๐ธ , ๐๐ธ๐
Recall DH-parameters and homogeneous transformations:
10๐ =
๐1 โ๐ 1๐ 1 ๐1
0 ๐1๐10 ๐1๐ 1
0 00 0
1 ๐10 1
, 21๐ =
๐2 ๐ 2๐ 2 โ๐2
0 ๐2๐20 ๐2๐ 2
0 00 0
โ1 00 1
,
32๐ =
1 00 1
0 00 0
0 00 0
1 ๐30 1
, 43๐ =
๐4 โ๐ 4๐ 4 ๐4
0 00 0
0 00 0
1 ๐40 1
.
First compute the vectors ๐๐โ1๐0 = ๐1 = 0, 0, 1 ๐ , ๐2 = ๐3 = 0,0, โ1 ๐
Now compute: ๐โ1 ๐4โ , for ๐ = 3,4 by inspection (red/purple vectors):
3๐4โ =
00
โ๐4
, 2๐4โ =
00
โ๐3 โ ๐4
.
24
๐ฝ๐๐ ๐๐๐๐ถ๐๐
๐1๐1๐101
๐20๐2๐2
0๐3003
๐4๐4004
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Conventional Jacobians
โข Examples:
Example 2: SCARA Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3, แถ๐4๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ , แถ๐ง๐ธ , ๐๐ธ๐
Furthermore, calculate ๐โ1๐4โ , for ๐ = 1,2 iteratively:
1๐4โ = ๐
๐๐น๐200
+ 2๐4โ =
๐2๐12๐2๐ 12
โ๐3 โ ๐4,
0๐4โ = ๐
๐๐น
๐10๐1
+ 1๐4โ =
๐1๐1 + ๐2๐12๐1๐ 1 + ๐2๐ 12๐1โ๐3 โ ๐4
.
Hence แถ๐ = ๐ฑ แถ๐ where, ๐ฑ is a 6 ร 4 matrix as:
๐ฑ =๐0 ร
0๐4โ
๐0
๐๐ ร1๐4
โ
๐๐
๐3๐
๐4 ร3๐4
โ
๐4=
โ๐1๐ 1 โ ๐2๐ 12๐1๐1 + ๐2๐12
0001
๐2๐ 12๐2๐120001
00โ1000
00000โ1
.
Note: The angular velocity is found as ๐๐ธ = แถ๐1 + แถ๐2 โ แถ๐4 in ๐ง direction.
25
๐10๐1
๐200
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Conventional Jacobians
Example 3: Stanford Manipulator
For wrist ๐ท position แถ๐ = แถ๐1, แถ๐2, แถ๐3, แถ๐4, แถ๐5, แถ๐6๐
and แถ๐ = แถ๐๐, ๐๐๐
Recall DH parameters, and homogeneous transformations
26
๐ฝ๐๐ ๐๐๐๐ถ๐๐
๐100โ๐/21
๐2๐20๐/22
0๐3003
๐400โ๐/24
๐500๐/25
๐60006
๐ท
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
๐ท
Conventional Jacobians
Example 3: Stanford Manipulator
For wrist ๐ท position แถ๐ = แถ๐1, แถ๐2, แถ๐3, แถ๐4, แถ๐5, แถ๐6๐and แถ๐ = แถ๐๐, ๐๐
๐
First compute the vectors ๐๐โ1
and for ๐ = 1,2, โฆ , 6 : ๐
27
๐2
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Conventional Jacobians
Example 3: Stanford Manipulator
For wrist ๐ท position แถ๐ = แถ๐1, แถ๐2, แถ๐3, แถ๐4, แถ๐5, แถ๐6๐and แถ๐ = แถ๐๐, ๐๐
๐
Hence แถ๐ = ๐ฑ แถ๐ in reference frame {0} is given by:
Where ๐4, ๐5 are joint axis unit vectors given before.
Note 1: Since the wrist position is considered for the manipulations, the Jacobian
matrix is upper triangular.
Note 2: The Jacobian matrix will be much simplified if it is given w.r.t frame {2}.
28
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Screw-based Jacobian:
General Derivation Method
แถ๐ =๐๐ธ
๐๐= ๐ฑ ๐ แถ๐ =
๐ฑ๐๐ฑ๐
แถ๐
แถ๐ = ฯ๐=1๐ $๐ แถ๐๐
Where the unit twist is defined in slide 15 as:
For rotary joint (R)
For prismatic joint (P)
Therefore, the Jacobian matrix consists of the unit screws:
๐ฑ = $1, $2, โฆ , $๐ .
29
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobianโข Screw-based Jacobian:
General Derivation Method
แถ๐ =๐๐ธ
๐๐= ๐ฑ ๐ แถ๐ =
๐ฑ๐๐ฑ๐
แถ๐
๐ฑ = $1, $2, โฆ , $๐
Note that the task space variable
แถ๐ =๐๐ธ
๐๐Consist of the angular velocity of the end effector
But linear velocity of any point ๐ท (including the end effector ๐ฌ)
To assign the screw parameters
Consider an instantaneous fixed frame on the point of interest ๐ท.
The direction of the joint axes can be determined by inspection or by the third column of ๐โ10๐จ.
The distance of the screw axes from this instantaneous frame is denoted by ๐๐,๐ represented in this
instantaneous frame
If the origin of intermediate frames (3 or 4) is used as the point of interest, the Jacobian is much simpler.
Notice the notation of ๐๐,๐ denotes the origin of frame ๐ w.r.t the instantaneous frame on point ๐ท.
30
๐ง0
๐ฆ0๐ฅ0๐ท
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
๐ง0
๐ฆ0๐ฅ0๐ท
Jacobian
โข Screw-based Jacobian:
Iterative Recipe:
Initial Conditions
Consider frame {๐} to represent the Jacobian
Begin with ๐ ๐+1 = 0, 0, 1 ๐ , ๐ ๐,๐+1 = 0, 0, 0 ๐
Forward Computation
For ๐ = ๐ + 1,โฆ , ๐ โ 1 compute
31
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian
โข Screw-based Jacobian:
Iterative Recipe:
Backward Computation
For ๐ = ๐ โ 1,โฆ , 0 compute
Where
Furthermore,
and
Is the position vector from ๐๐โ1 to ๐๐ expressed in ๐๐กโ frame.
Assembling the unit screws derived above, yields to the Jacobian of the point ๐ท as:
๐๐๐ฌ๐๐๐
= ๐ฑ แถ๐ โ ๐ฑ = ๐ฝ๐ , ๐ฝ2, โฆ , ๐ฝ๐ and ๐ฝ๐ =๐๐
๐๐,๐ ร ๐๐for (R) joint or ๐ฝ๐ =
๐๐๐
for (P) joints.
32
๐ง0
๐ฆ0๐ฅ0๐ท
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
โข Examples:
Example 1: Planar RRR Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3๐
and แถ๐ = ๐๐ธ , ๐๐๐
Put an instantaneous frame {0} on point ๐ธ.
Find the screw details by inspection:
For $3:
๐3 = 0, 0, 1 ๐ , ๐๐,3= 30๐น
โ๐300
=โ๐3๐123โ๐3๐ 123
0.
For $2:
๐2 = 0, 0, 1 ๐ , ๐๐,2=๐๐,3+20๐น
โ๐200
=โ๐2๐12 โ ๐3๐123โ๐2๐ 12 โ ๐3๐ 123
0.
For $1:
๐1 = 0, 0, 1 ๐ , ๐๐,1=๐๐,2+10๐น
โ๐100
=โ๐1๐1 โ ๐2๐12 โ ๐3๐123โ๐1๐ 1 โ ๐2๐ 12 โ ๐3๐ 123
0
33
$1
$2
$3
๐๐,3
๐๐,2๐๐,1
๐ฅ0
๐ฆ0
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 1: Planar RRR Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3๐
and แถ๐ = ๐๐ธ , ๐๐๐
The Jacobian แถ๐ = ๐ฑ ๐ แถ๐ is found by ๐ฑ = [$1, $2, $3],
In which, $๐ =๐๐
๐๐,๐ ร ๐๐, hence:
๐ฑ =
001
โ๐1๐ 1 โ ๐2๐ 12 โ ๐3๐ 123๐1๐1 + ๐2๐12 + ๐3๐123
0
001
โ๐2๐ 12 โ ๐3๐ 123๐2๐12 + ๐3๐123
0
001
โ๐3๐ 123๐3๐1230
In planar coordinates, this means:
๐๐ = แถ๐ = แถ๐1 + แถ๐2 + แถ๐3
แถ๐ฅ๐ธ = โ ๐1๐ 1 + ๐2๐ 12 + ๐3๐ 123 แถ๐1 โ ๐2๐ 12 + ๐3๐ 123 แถ๐2 โ ๐3๐ 123 แถ๐3
แถ๐ฆ๐ธ = ๐1๐1 + ๐2๐12 + ๐3๐123 แถ๐1 โ ๐2๐12 + ๐3๐123 แถ๐2 โ ๐3๐123 แถ๐3
Which is exactly as found before (see slide 24).
34
$1
$2
$3
๐๐,3
๐๐,2๐๐,1
๐ฅ0
๐ฆ0
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
$1
$2
$3
๐๐,2
๐๐,1
๐ฅ0
๐ฆ0
Screw-Based Jacobians
Example 1: Planar RRR Manipulator
Jacobian for wrist Point ๐ท : แถ๐ = แถ๐1, แถ๐2, แถ๐3๐
and แถ๐ = ๐๐ฌ, ๐๐๐
Put an instantaneous frame {0} on point ๐ท.
Find the screw details by inspection:
๐3 = ๐2 = ๐1 = 0, 0, 1 ๐ , ๐๐,3=000, ๐๐,2=2
0๐นโ๐200
=โ๐2๐12โ๐2๐ 12
0.
๐๐,1=๐๐,2+10๐น
โ๐100
=โ๐1๐1 โ ๐2๐12โ๐1๐ 1 โ ๐2๐ 12
0
Hence,
๐ฑ =
001
โ๐1๐ 1 โ ๐2๐ 12๐1๐1 + ๐2๐12
0
001
โ๐2๐ 12๐2๐120
001000
or component-wise:
๐๐ = แถ๐ = แถ๐1 + แถ๐2 + แถ๐3แถ๐ฅ๐ = โ ๐1๐ 1 + ๐2๐ 12 แถ๐1 โ ๐2๐ 12 แถ๐2
แถ๐ฆ๐ = ๐1๐1 + ๐2๐12 แถ๐1 + ๐2๐12 แถ๐2
Which is exactly as found before (see slide 25).
35
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobiansโข Examples:
Example 1: Planar RRR Manipulator
Denote แถ๐ = แถ๐1, แถ๐2, แถ๐3๐
and แถ๐ = ๐๐ธ , ๐๐๐
Put an instantaneous frame {0} on point ๐ธ.
Find the screw details by iteration:
Initial Conditions:
For ๐ = 4, ๐4 = 0, 0, 1 ๐ , ๐๐,4 = 0, 0, 0 ๐ .
(BI) Now look backward, For ๐ = 3:
๐3=34๐น ๐3 = 3
0๐น ๐4 =001, ๐๐,3=๐๐,4 โ 3
0๐น๐300
=โ ๐3๐123โ ๐3๐ 123
0
๐2=20๐น ๐2 =
001, ๐๐,2=๐๐3 โ 2
0๐น๐200
=โ๐2๐12 โ ๐3 ๐123โ๐2๐ 12 โ ๐3 ๐ 123
0
๐1=10๐น ๐1 =
001, ๐๐,1=๐๐,2 โ 1
0๐น๐100
=โ๐1๐1 โ ๐2๐12 โ ๐3 ๐123โ๐1๐ 1 โ ๐2๐ 12 โ ๐3 ๐ 123
0
36
$1
$2
$3
๐ฅ0
๐ฆ0
๐๐๐ฌ๐๐๐ธ
= ๐ฑ แถ๐ โ ๐ฑ = ๐ฝ1, ๐ฝ2, โฆ , ๐ฝ3 , and ๐ฝ๐ =๐๐
๐๐,๐ ร ๐๐
๐ฑ =
001
โ๐1๐ 1 โ ๐2๐ 12 โ ๐3๐ 123๐1๐1 + ๐2๐12 + ๐3๐123
0
001
โ๐2๐ 12 โ ๐3๐ 123๐2๐12 + ๐3๐123
0
001
โ๐3๐ 123๐3๐1230
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 2: Elbow Manipulator
Consider the point of Interest ๐ถโฒ the origin of frame {4}
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ , ๐๐โฒ๐
Initial Conditions:
For ๐ = 4, ๐5 = 0, 0, 1 ๐, ๐ ๐,5 = 0, 0, 0 ๐ .
(FI) Find the 6th axes details. For ๐ = 5:
(BI) Now look backward, For ๐ = 3:
37
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 2: Elbow Manipulator
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ , ๐๐โฒ๐
For ๐ = 2
For ๐ = 1 :
For ๐ = 0 :
38
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 2: Elbow Manipulator
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ, ๐๐โฒ๐
Hence แถ๐ = ๐ฑ แถ๐ in reference frame {4} is given by:
In which,
39
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 3: Stanford Arm (2RP3R)
Consider the wrist point ๐ท the origin of frame {3}
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ , ๐๐๐
Initial Conditions:
For ๐ = 3, ๐4 = 0, 0, 1 ๐, ๐ ๐,4 = 0, 0, 0 ๐ .
Find the 5th and 6th axes details. For ๐ = 4:
For ๐ = 5:
40
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 3: Stanford Arm (2RP3R)
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ, ๐๐๐
Find the 3rd, 2nd and 1st axes details. For ๐ = 2:
For ๐ = 1:
41
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Screw-Based Jacobians
Example 3: Stanford Arm (2RP3R)
Denote แถ๐ = แถ๐1, โฆ , แถ๐6๐
and แถ๐ = ๐๐ธ , ๐๐๐
For ๐ = 0:
Hence แถ๐ = ๐ฑ แถ๐ in reference frame {3} is given by:
Observe that the Jacobian is greatly simplified for the wrist point ๐ท.
42
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
43
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Static Wrench
โข Applied Wrench to the Environment
How much actuator effort is needed to apply such forces/Moments
Define the actuator torque/force
๐ = ๐1, ๐2, โฆ , ๐๐๐ in which ๐๐ = แ
๐๐ for a revolute joint๐๐ for a prismatic joint
Define the applied wrench to the environment: (6 ร 1) tuple
๐ = ๐ญ๐ธ , ๐๐ธ๐ in which เต
๐ญ๐ธ = ๐น๐ฅ ๐น๐ฆ ๐น๐ง ๐ The applied force
๐๐ธ = ๐๐ฅ ๐๐ฆ ๐๐ง ๐ The applied torque
Wrench is a screw-based coordinate as twist
Jacobian transpose maps the joint space variables to task space by:
๐ = ๐ฑ๐ป ๐ ๐
44
Joint Space๐
Task Space๐
๐ฑโ๐ป
๐ฑ๐ป
๐ญ๐ธ
๐๐ธ
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Static Wrench
โข Principle of Virtual Work
Virtual Displacement
Infinitesimal change in the position and orientation ๐ฟ๐ or ๐ฟ๐
Which does not really change the posture and force distribution in the robot.
๐ฟ๐ = ๐ฟ๐1, ๐ฟ๐2, โฆ ๐ฟ๐๐๐: The virtual displacement of the joint variables
๐ฟ๐ = ๐ฟ๐ฅ, ๐ฟ๐ฆ, ๐ฟ๐ง, ๐ฟ๐๐ฅ , ๐ฟ๐๐ฆ, ๐ฟ๐๐ง๐: The virtual displacement of the end effector, where ๐ฟ๐๐ฅ, ๐ฟ๐๐ฆ, ๐ฟ๐๐ง
๐= ๐ฟ๐เท๐
is the orientation variable in screw representation.
System Under Static Balance
The total virtual work, ๐ฟ๐, done by all the actuators and external forces is equal to zero.
๐ฟ๐ = ๐๐๐ฟ๐ โ ๐๐๐ฟ๐ = 0.
where, โ๐๐ is used in here, to include the wrench applied to the robot by environment.
Jacobian maps: แถ๐ = ๐ฑ ๐ แถ๐ therefore, ๐ฟ๐ = ๐ฑ ๐ ๐ฟ๐.
Substitute ๐ฟ๐ = ๐๐ โ ๐๐๐ฑ ๐ ๐ฟ๐ = 0
This holds for any arbitrary virtual displacement ๐ฟ๐; Hence
๐๐ โ ๐๐๐ฑ ๐ = 0 or ๐ = ๐ฑ๐ป ๐ ๐
This means ๐ฑ๐ป ๐ maps the wrenches ๐ applied to the environment into the actuator torques ๐
45
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Static Wrench
Example 1: Planar RRR Manipulator
Denote ๐ = ๐1, ๐2, ๐3๐: The actuator forces in the joints, and
and ๐ = ๐๐ฅ, ๐๐ฆ, ๐๐ง๐
the planar force ๐ญ๐ฌ = ๐๐ฅ, ๐๐ฆ๐
and ๐๐ง the torque
exerted to the environment
The Jacobian map ๐ = ๐ฑ๐ป ๐ ๐ may be used
In which,
๐ฑ(๐) =โ๐1๐ 1 โ ๐2๐ 12 โ ๐3๐ 123 โ๐2๐ 12 โ ๐3๐ 123 โ๐3๐ 123๐1๐1 + ๐2๐12 + ๐3๐123 ๐2๐12 + ๐3๐123 ๐3๐123
1 1 1
This means:
๐1 = โ ๐1๐ 1 + ๐2๐ 12 + ๐3๐ 123 ๐๐ฅ + ๐1๐1 + ๐2๐12 + ๐3๐123 ๐๐ฆ + ๐๐ง
๐2 = โ ๐2๐ 12 + ๐3๐ 123 ๐๐ฅ + ๐2๐12 + ๐3๐123 แถ๐2 + ๐๐ง
๐3 = โ ๐3๐ 123 ๐๐ฅ + ๐3๐123 ๐๐ฆ + ๐๐ง
This may be verified by Newton-Euler free body diagram method.
46
๐ญ๐ธ
๐๐ง
๐๐ฅ
๐๐ฆ
๐1
๐2
๐3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
47
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Jacobian Characteristics
โข Singularity
Jacobian reveals the forward differential kinematic map แถ๐ = ๐ฑ(๐) แถ๐
Forward Map Inverse Map
Given แถ๐ find แถ๐ Given แถ๐ find แถ๐
Consider the inverse map
For square Jacobians if ๐ฑโ๐(๐) exists then แถ๐ = ๐ฑโ๐ ๐ แถ๐
This is used to find the required joint speeds to achieve a desired velocity in task space.
At singular configurations of ๐ฑ(๐), this matrix is not invertible (det ๐ฑ = 0).
@ singular configuration, with finite joint speeds all arbitrary task velocities are not achievable!
This will happen at the boundary of the workspace, and โฆ
48
Joint Space
แถ๐
Task Space
แถ๐
๐ฑ
๐ฑโ
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข Motivating Example
Consider the planar 2R manipulator
Denote แถ๐ = แถ๐1, แถ๐2๐
and แถ๐ = แถ๐ฅ๐ธ , แถ๐ฆ๐ธ๐
Jacobian in frame{0}: 0๐ฑ =โ๐1๐ 1 โ ๐2๐ 12 โ๐2๐ 12๐1๐1 + ๐2๐12 ๐2๐12
, and in frame {2}: 2๐ฑ =๐1๐ 2 0
๐1๐2 + ๐2 ๐2.
Singular configurations
๐๐๐ก 0๐ฑ = ๐๐๐ก 2๐ฑ = ๐1๐2๐ 2 = 0 if ๐ 2 = 0 or ๐2 = 0 or ๐
Physically: Fully extended or retracted arms (We saw this when one double solution for IK occurs, on the
boundaries of the workspace)
Let us find the inverse solution:
แถ๐ = ๐ฑโ๐ ๐ แถ๐ โแถ๐1แถ๐2=
1
๐1๐2๐ 2
๐2๐12 ๐2๐ 12โ๐1๐1 โ ๐2๐12 โ๐1๐ 1 โ ๐2๐ 12
แถ๐ฅ๐ธแถ๐ฆ๐ธ
To visualize, consider แถ๐ฅ๐ธ = 1 while แถ๐ฆ๐ธ = 0 (move in ๐ฅ direction), then
แถ๐1 =1
๐1๐2๐ 2, แถ๐2 =
โ1
๐1๐2๐ 2(๐1๐1 + ๐2๐12)
As the arms are fully extended ๐ 2 โ 0, and แถ๐1, แถ๐2 โ โ
At the boundary of the workspace ๐ 2 = 0, no further out movement in x direction is possible.
49
แถ๐ = แถ๐ฅ๐ , แถ๐ฆ๐๐
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข General Description
Consider a 6 ร ๐ Jacobian ๐ฑ(๐) of a nDoF robot denoted by
แถ๐ = ๐ฝ1 แถ๐1 + ๐ฝ2 แถ๐2 +โฏ+ ๐ฝ๐ แถ๐๐ or แถ๐ = $1 แถ๐1 + $2 แถ๐2 +โฏ+ $๐ แถ๐๐Where ๐ฝ๐ or $๐ are the columns of the Jacobian matrix
Robot EE can reach any arbitrary twist if rank ๐ฑ(๐) = 6.
rank ๐ฑ(๐) = No. of independent ๐ฝ๐ or $1 (Configuration Dependent)
For a 6DoF robot rank ๐ฑ(๐) โค 6 and @ ๐ that < 6 singularity occurs
For a 2DoF robot rank ๐ฑ(๐) โค 2 and @ ๐ that < 2 singularity occurs
At singular configurations:
Certain direction of motion is unattainable (undesired)
Bounded end-effector velocities โ unbounded joint speeds
Bounded joint torques โ unbounded end-effector forces (desired)
Often occurs @ boundary of workspace (where one double solution for
IK occurs)
50
Fully extended arms to lift heavy loads
Reaching high:
Fully extended neck
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข Singular Configurations
For Square Jacobians: Find ๐ such that det ๐ฑ(๐) = 0.
Decoupling of Singularities
For the case of ๐ = 6: ๐ฑ ๐ = ๐ฑ๐๐๐ | ๐ฑ๐ค๐๐๐ ๐ก =๐ฑ11 ๐ฑ12๐ฑ21 ๐ฑ22
If wrist axes are revolute and intersect at a point then ๐ฑ๐ค๐๐๐ ๐ก =๐๐ฑ22
=0เท๐๐
0เท๐๐
0เท๐๐
The Jacobian is upper triangular ๐ฑ ๐ =๐ฑ11 ๐๐ฑ21 ๐ฑ22
Singularity occurs @ ๐, in which:
det ๐ฑ(๐) = det ๐ฑ11(๐) โ det ๐ฑ22 ๐ = 0
Determine Singular configuration of arm and wrist separately.
Wrist singularity occurs @ ๐, in which: det ๐ฑ22 ๐ = 0
Arm singularity occurs @ ๐, in which: det ๐ฑ11 ๐ = 0
51
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข Decoupling of Singularities
Wrist Singularities
Consider 3R intersecting wrist:
A typical industrial design is like ๐ค โ ๐ข โ ๐ค Euler configuration.
det ๐ฑ22 ๐ = 0
This happens when the ๐ง๐ axes are linearly dependent.
Singular configuration: when ๐ง3 and ๐ง5 are collinear.
Then: ๐5 = 0 or ๐
Wrist Singularities
Consider 3R Elbow manipulator like design
The determinant is:
52
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข Decoupling of Singularities
Wrist Singularities
Consider 3R Elbow manipulator like design
Singular configurations: If ๐ 3 = 0 or ๐3 = 0 or ๐
Fully extended or retracted.
Or when ๐2๐2 + ๐3๐23 = 0
The wrist point intersect the base axis
This case occurs @ infinitely many configurations
Where infinitely many solution exist for IK.
If the elbow manipulator has an offset this singular configuration vanishes.
53
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity
โข Decoupling of Singularities
Wrist Singularities
Consider 2RP Spherical Manipulator with no off set
By inspection singular configuration exists if:
The wrist point intersect the base axis:
Consider SCARA Manipulator
The Jacobian is derived before, in which
where
det ๐ฝ11 = 0 if ๐ผ1๐ผ4 โ ๐ผ2๐ผ3 = 0.
This occurs if ๐ 2 = 0, which implies ๐2 = 0 or ๐.
This is similar to Elbow manipulator for fully extended or retracted arm.
54
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Dexterity
โข Motivation Example:
Cobra Attack: Optimal Posture
55
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Dexterity
โข Definition:
Skill in performing tasks, especially with the hands. โquicknessโ
56
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Dexterity
โข โQuicknessโ in Multi Dimensional Space?
Consider norm bound joint velocities (unit sphere)
แถ๐ 22 = แถ๐1
2 + แถ๐22 +โฏ+ แถ๐๐
2 โค 1
What happens to the task space velocities?
แถ๐ 22 = แถ๐๐ แถ๐ = ๐ฑโ แถ๐
๐๐ฑโ แถ๐ = แถ๐๐๐ฑโ
๐ป๐ฑโ แถ๐ = แถ๐๐ ๐ฑ๐ฑ๐ป
โ แถ๐
For all fat, square or tall Jacobians: ๐ฑ๐ฑ๐ป is a 6 ร 6 matrix, hence
แถ๐ 22 = แถ๐๐ ๐ฑ๐ฑ๐ป
โ1แถ๐
This result into Dexterity or Manipulability Ellipsoid
If a uniform input แถ๐ 22 = 1, the output task velocities shall have a weighted norm along this ellipsoid
57
Joint Spaceแถ๐ 22
Task Spaceแถ๐ 22
๐ฑ๐ฑ๐ปโ1
แถ๐ 22 = แถ๐๐ ๐ฑ๐ฑ๐ป
โ1แถ๐
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Isotropy
โข Eigenvalues and Eigenvectors
The ellipsoid is characterized by its eigen parameters
det ๐ฑ๐ฑ๐ = ๐1 โ ๐2 โ โ โ ๐๐
Two extreme cases:
Singularity: โ ๐๐ = 0 โ det ๐ฑ๐ฑ๐ = ๐1 โ ๐2 โ โ โ ๐๐ = 0
The ellipsoid is changed to a cylinder in ๐ฃ๐ (eigenvector) direction.
There exist no finite joint velocities to reach to task velocities in ๐ฃ๐direction
Isotropy:
โ ๐๐ = 1 โ ๐ฑ๐ฑ๐ = ๐ฐ unit matrix โ det ๐ฑ๐ฑ๐ = 1
The ellipsoid is changed to a sphere
Dexterity in all task space direction with finite joint velocities
Isotropy in applying equal velocities in all directions
58
๐ฃ๐
Isotropy
Singularity
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
โข Gain of the Velocity Map
Applying a uniform and unit norm input แถ๐ 22 = 1
Gain of the output is given bydet ๐ฑ๐ฑ๐ = ๐1 โ ๐2 โ โ โ ๐๐
Where ๐๐ denote the eigenvalue of ๐ฑ๐ฑ๐
Singular value of ๐ฑ ?
For a general even non-square matrix ๐ฑ
๐๐ ๐ฑ = ๐๐ ๐ฑ๐ฑ๐
Where ๐๐ denotes the singular value of matrix ๐ฑ
Manipulability Measure ๐ of ๐ฑ(๐)
๐ = det ๐ฑ๐ฑ๐ = ๐1 โ ๐2 โ โ โ ๐๐ = ๐1 โ ๐2 โ โ โ ๐๐ singular values of (๐ฑ)
The measure is configuration dependent.
If ๐ โ 0 the configuration of the robot tends to singularity.
If ๐ โ 1 the configuration of the robot tends to isotropy.
๐ = 0 , if and only if rank ๐ฑ < ๐, the DoFโs of the robot.
59
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
โข Gain of the Velocity Map
Manipulability Measure ๐ of ๐ฑ(๐)
If the robot is under actuated it is deficient and ๐ = 0.
If the robot is redundantly actuated, there are extra ๐๐ โs than Dofโs
This could be used to increase ๐ (Biological designs!)
Reconsider Cobra attack, the snake uses redundant posture for the attack.
In general
แถ๐ 22 = แถ๐๐ ๐ฑ๐ฑ๐ป
โ1แถ๐ โค
1
๐ฑ๐ฑ๐ปแถ๐ 22 =
1
๐2แถ๐ 22 โ แถ๐ โฅ ๐ แถ๐
max แถ๐ = 1/๐๐๐๐ แถ๐
min แถ๐ = 1/๐๐๐๐ฅ แถ๐
in direction of ๐ฃ๐๐๐ฅ
in direction of ๐ฃ๐๐๐
๐ denotes the gain required to generate a specific task space velocity
If ๐ = 0 some velocity directions are not attainable.
If ๐ = 1 the uniform input is projected uniformly in all directions of the outputs.
The shape of the ellipsoid is also very informative on the attainable directions.
60
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
โข Other Measures
Reciprocal of Condition number of ๐ฑ(๐)
Definition: Condition number of a matrix ๐ฑ is ๐ (๐ฑ) =๐๐๐๐ฅ(๐ฑ)
๐๐๐๐(๐ฑ)
In which ๐๐๐๐ฅ(๐ฑ), and ๐๐๐๐(๐ฑ) denotes the largest and smallest singular value of ๐ฑ, respectively.
The measure: rcond ๐ = 1/๐ (๐ฑ) =๐๐๐๐(๐ฑ)
๐๐๐๐ฅ(๐ฑ)
If rcond = 0: at least one of the singular values are zero: singular configuration
If rcond = 1: All singular values are one: isotropic configuration
๐ considers all the singular values by rcond only extreme values
The analysis are similar but the ellipsoids are not analyzed in rcond.
Global Measures
All measures are configuration dependent
There could be good at a pose and bad at another.
Integrate the measure in the whole space to get an averaged global measure
61
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
โข Examples:
Example 1: Isotropy Analysis of 2R Robot
In 2R manipulator:
แถ๐ = ๐ฑ แถ๐ , in which ๐ฑ in frame 2 is 2๐ฑ =๐1๐ 2 0
๐1๐2 + ๐2 ๐2
Inspired by human arm, consider ๐1 = 2, and ๐2 = 1.
Use symbolic manipulator to find ๐ฑ๐ฑ๐ป and its eigenvalues:
๐ฑ๐ฑ๐ป =2๐ 2
2 2๐2๐ 2 + 2๐ 2
2๐2๐ 2 + 2๐ 2 2 2๐2 + 12+ 1
; det(๐ฑ๐ฑ๐ป) = 2๐ 22,
๐1,2 = ยฑ 4๐22 + 4 2 ๐2 + 2
1/2+ 2๐2 + 2
In Isotropic configurations ๐1 = ๐2 = 1.
Only for this bio-inspired design isotropy happens @ ๐2 = ยฑ3๐
4โ๐1.
The locus of isotropic configurations are shown in figure.
While singularity happens at fully-extended or retracted arm!
62
แถ๐ = แถ๐ฅ๐ , แถ๐ฆ๐๐
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
Example 1: (Cont.)
Now consider ๐2 =๐
2; for this configuration:
๐ฑ๐ฑ๐ป(๐2 =๐
2) =
2 2
2 2; ๐ฑ๐ฑ๐ป
โ๐=
1 โ1/ 2
โ1/ 2 1
Calculate the velocity map gains
For ๐ฑ๐ฑ๐ป โ๐1 = 3.414๐2 = 0.586
; while ๐ฃ1 =1
2
11, ๐ฃ2 =
1
2
โ11
,
then for ๐ฑ๐ฑ๐ปโ๐
โ๐1 = 0.292๐2 = 1.707
For ๐ฑ ; ๐บ๐๐๐ = 1/๐๐๐๐ฅ = 0.541๐บ๐๐๐ฅ = 1/๐๐๐๐ = 1.307
; while ิฆ๐ฃ๐๐๐ =11, ิฆ๐ฃ๐๐๐ฅ =
โ11
The gains are reciprocals of ๐ฑ singular values.
Directions are found by eigenvalues of ๐ฑ๐ฑ๐ป
63
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
Example 1: (Cont.)
Proof of the mapping gains for ๐2 =๐
2configuration:
From แถ๐ 22 = แถ๐๐ ๐ฑ๐ฑ๐ป
โ1แถ๐ โ แถ๐1
2 + แถ๐22 = ๐ฃ๐ฅ
2 โ 2 ๐ฃ๐ฅ๐ฃ๐ฆ + ๐ฃ๐ฆ2
แถ๐12 + แถ๐2
2 = 0.292๐ฃ๐ฅ
2+๐ฃ๐ฆ
2
2
+ 1.707๐ฃ๐ฅ
2โ๐ฃ๐ฆ
2
2
For ๐ฃ1 =11, ๐ฃ๐ฅ = ๐ฃ๐ฆ โ แถ๐1
2 + แถ๐22 = 0.292 2 ๐ฃ๐ฅ
2โ 2 ๐ฃ๐ฅ
2= 3.414 แถ๐1
2 + แถ๐22
โ แถ๐๐๐๐ฅ = 1.848 แถ๐ =1
0.541แถ๐ in ิฆ๐ฃ๐๐๐ =
11
direction
For ๐ฃ1 =โ11
, ๐ฃ๐ฅ = โ๐ฃ๐ฆ โ แถ๐12 + แถ๐2
2 = 1.707 2 ๐ฃ๐ฅ2โ 2 ๐ฃ๐ฅ
2= 0.586 แถ๐1
2 + แถ๐22
โ แถ๐๐๐๐ = 0.765 แถ๐ =1
1.307แถ๐ in ิฆ๐ฃ๐๐๐ฅ =
โ11
direction
64
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Manipulability
Example 1: (Cont.)
For ๐2 =๐
2configuration:
โ แถ๐๐๐๐ฅ = 1.307 แถ๐ =1
๐๐๐๐แถ๐ in ิฆ๐ฃ๐๐๐ฅ direction
โ แถ๐๐๐๐ = 0.541 แถ๐ =1
๐๐๐๐ฅแถ๐ in ิฆ๐ฃ๐๐๐ direction
Dexterity Measures: ๐ = det ๐ฑ๐ฑ๐ = ๐1 โ ๐2 = 2 , rcond =๐๐๐๐
๐๐๐๐ฅ=
0.764
1.848= 0.414
65
แถ๐ 22 = แถ๐๐ ๐ฑ๐ฑ๐ป
โ1แถ๐
ิฆ๐ฃ๐๐๐ฅ =โ11
ิฆ๐ฃ๐๐๐11
๐ฃ๐ฅ
๐ฃ๐ฆ
1
1
แถ๐1
แถ๐2
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
66
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Solutions
โข Definition:
Jacobian Forward Map แถ๐ = ๐ฑ ๐ แถ๐ or ๐ = ๐ฑ๐ป ๐ ๐
Inverse Solution for Fully Actuated Robot (๐ = ๐ = 6)
Jacobian matrix is square:
In non-singular configurations ๐, where ๐ฑโ๐ ๐ exists:
แถ๐ = ๐ฑโ๐ ๐ แถ๐ or ๐ = ๐ฑโ๐ป ๐ ๐
Near singular configurations:
To achieve a finite velocity แถ๐ very large joint velocities is required แถ๐ โ โ.
Very large forces could be applied to the environment with low actuator torques
Inverse Solution for Under Actuated Robot (๐ < 6)
Jacobian matrix is tall rectangular (6 ร ๐):
Solution exist only if แถ๐ lies in the range space of ๐ฑ ๐ or ๐ lies in the range space of ๐ฑ๐ป ๐
This is satisfied if rank ๐ฑ ๐ = rank ๐ฑ ๐ | แถ๐
The solution is found by left pseudo inverse of ๐ฑ ๐
แถ๐ = ๐ฑโ ๐ แถ๐ where ๐ฑโ = ๐ฑ๐ป๐ฑโ๐๐ฑ๐ป Note: (๐ฑ๐ป๐ฑ) is ๐ร๐:
67
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Redundancy in Nature
Human Arm: 7 Joints Mammalโs Neck: 7 Vertebra
Human Shoulder: 4 Muscles
68
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Redundancy in Nature
Human wrist: 8 Bones Birdโs Neck: 14 Vertebra!
69
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Solution
Inverse Solution for Redundantly Actuated Robot (๐ > 6)
Jacobian matrix is fat rectangular (6 ร ๐):
Infinitely many solution exists for the inverse problem
Basic solution is found by min-norm or least-squares solution:
Find แถ๐ such that แถ๐ = ๐ฑ ๐ แถ๐ while แถ๐ ๐ is minimized
The solution is found by right pseudo inverse of ๐ฑ ๐
แถ๐๐ณ๐บ = ๐ฑโ ๐ แถ๐ where ๐ฑโ = ๐ฑ๐ป ๐ฑ๐ฑ๐ปโ๐
Note: (๐ฑ๐ป๐ฑ) is 6 ร 6
Right pseudo inverse properties:
๐ฑ๐ฑโ = ๐ฑ๐ฑ๐ป ๐ฑ๐ฑ๐ปโ๐
= ๐ฐ
Set of all solutions:
แถ๐ = ๐ฑโ ๐ แถ๐ + ๐ฐ โ ๐ฑโ ๐ฑ ๐
In which, ๐ โ โ๐ is any arbitrary vector, and ๐ฐ โ ๐ฑโ ๐ฑ โ ๐.
All vectors in the form of แถ๐๐ = ๐ฐ โ ๐ฑโ ๐ฑ ๐ lie in the null space of ๐ฑ: ๐ ๐ฑ
แถ๐๐ โ ๐ but the corresponding task space velocity แถ๐๐ = ๐ฑ ๐ แถ๐๐ = ๐ (self โmotion)
70
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Solution
Inverse Solution for Redundantly Actuated Robot (๐ > 6)
LS solution is always a suitable alternative;
Redundancy Resolution
Finding suitable แถ๐๐ to accomplish some other objectives
71
Obstacle Avoidance
1Singularity
Circumvention
2IncreasingDexterity
3Maximizing
Manipulability
4Limited Actuator
Torques
5
A combined objective
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Solution
Inverse Solution for Redundantly Actuated Robot (๐ > 6)
Optimization Problem
Define a cost function to be minimized by redundancy resolution: ๐(๐ , แถ๐) or ๐(๐ , แถ๐) (e.g. แถ๐ ๐)
Consider Jacobian mapping as an equality constraint: แถ๐ = ๐ฑ ๐ แถ๐
Consider Forward kinematics as a nonlinear equality constraint: ๐ = ๐๐ญ๐ฒ(๐)
Consider joint limits as inequality constraints: ๐๐๐๐ โค ๐ โค ๐๐๐๐ฅ and/or แถ๐๐๐๐ โค แถ๐ โค แถ๐๐๐๐ฅ
min๐ , แถ๐
๐(๐ , แถ๐)
Subject to
แถ๐ = ๐ฑ ๐ แถ๐๐ = ๐๐ญ๐ฒ(๐)
๐๐๐๐ โค ๐ โค ๐๐๐๐ฅ
แถ๐๐๐๐ โค แถ๐ โค แถ๐๐๐๐ฅ
โฎ
Analytical Solutions: Lagrange and KKT Multipliers
Numerical Solutions : Interior Point Method โfminconโ in Matlab
Genetic Algorithms , โฆ
72
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Solution
Inverse Solution for Redundantly Actuated Robot (๐ > 6)
Numerical Solution: fmincon function in Matlab
73
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Inverse Acceleration
Differentiate Jacobian Forward Map แถ๐ = ๐ฑ ๐ แถ๐
แท๐ = ๐ฑ ๐ แท๐ + แถ๐ฑ ๐ แถ๐
Inverse Solution for Fully Actuated Robot (๐ = ๐ = 6)
๐ฑ ๐ แท๐ = แท๐ โ แถ๐ฑ ๐ แถ๐
Jacobian matrix is square:
In non-singular configurations ๐, where ๐ฑโ๐ ๐ exists:
แถ๐ = ๐ฑโ๐ ๐ แถ๐
This results in:
แท๐ = ๐ฑโ๐ ๐ แท๐ โ แถ๐ฑ ๐ แถ๐ OR
แท๐ = ๐ฑโ๐ ๐ แท๐ โ แถ๐ฑ ๐ ๐ฑโ๐ ๐ แถ๐
For non-square Jacobians such manipulation is not possible.
74
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Obstacle Avoidance
โข Example 2:
Redundancy Resolution for 3R Robot:
Consider a desired vertical motion (2D)
From ๐0 = 20๐, 30๐, 20๐ ๐ โ ๐0 โ ๐ฅ0, ๐ฆ0๐ To ๐๐ โ ๐ฅ0, 0
๐
Avoiding obstacle shown in the figure:
In task space:
Move ๐0 = ๐ฅ0, ๐ฆ0๐ โ 1.7, 1.4 ๐ To ๐๐ = ๐ฅ0, 0
๐ in one seconds.
Use cubic trajectory planning:
๐ฅ๐ ๐ก = ๐ฅ0, ๐ฆ๐ ๐ก = ๐ฆ0(1 โ 3 โ 2๐ก ๐ก2)
In velocity space given: แถ๐ฅ๐ ๐ก = 0, แถ๐ฆ๐ ๐ก = ๐ฆ0(6๐ก
2 โ 6๐ก)
Find ๐ ๐ก = ๐1, ๐2, ๐3๐ to traverse this path while avoiding obstacle.
Robot has 3Dof, and for this task has one degree of redundancy
To move along ๐2ร1(๐ก) there exist infinite number of joint space solutions ๐3ร1(๐ก)
Find the one to avoid interfering with the obstacle.
75
๐ฅ
๐ฆ
๐3 = 0.3
๐1
๐0โ
๐2
๐3
๐๐1
Obstacle
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Obstacle Avoidance
โข Example 2: (Cont.)
Redundancy Resolution for 3R Robot:
The Jacobin is 2 ร 3 , the LS solution is not good
Robot shall go to elbow-up posture to avoid the obstacle
Formulate an optimization problem
min๐ , แถ๐
๐(๐ , แถ๐)
Subject to แแถ๐ = ๐ฑ ๐ แถ๐
๐ = ๐๐ญ๐ฒ(๐)
Robot desired posture (elbow up) ๐๐ = 45๐, โ70๐, โ10๐ ๐
Performance index: minimize ๐ ๐ = ๐ โ ๐๐ 2
Robot Jacobian แถ๐ ๐ก = ๐ฑ แถ๐(๐ก), where
๐ฑ =โ๐1๐ 1 โ ๐2๐ 12 โ ๐3๐ 123 โ๐2๐ 12 โ ๐3๐ 123 โ๐3๐ 123๐1๐1 + ๐2๐12 + ๐3๐123 ๐2๐12 + ๐3๐123 ๐3๐123
Robot Forward Kinematics ๐ = ๐๐ญ๐ฒ(๐):
๐1 = ๐1๐1 + ๐2๐12 + ๐3 ๐123๐2 = ๐1๐ 1 + ๐2๐ 12 + ๐3 ๐ 123
76
๐ฅ
๐ฆ
๐3 = 0.3
๐1
๐0โ
๐2
๐3
๐๐1
Obstacle
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
โข Example 2: (Cont.)
Redundancy Resolution for 3R
Robot:
Consider the base Solution:
แถ๐๐ณ๐บ = ๐ฑโ ๐ แถ๐ where ๐ฑโ = ๐ฑ๐ป ๐ฑ๐ฑ๐ปโ๐
This solution minimizes
๐แถ๐๐
But It is not good for obstacle
avoidance:
Obstacle Avoidance77
Obstacle
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Obstacle Avoidance
โข Example 2: (Cont.)
Redundancy Resolution for 3R
Robot:
Solve optimization problem
min๐ , แถ๐
๐ โ ๐๐ 2
Subject to แแถ๐ = ๐ฑ ๐ แถ๐
๐ = ๐๐ญ๐ฒ(๐)
For Robot desired posture (elbow up)
๐๐ = 45๐, โ70๐, โ10๐ ๐
The trajectory is traversed without
interfering with the obstacle.
78
Obstacle
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Obstacle Avoidance
โข Example 2: (Cont.)
Redundancy Resolution for 3R
Robot:
Solve optimization problem
min๐ , แถ๐
๐ โ ๐๐ 2
Subject to แ
แถ๐ = ๐ฑ ๐ แถ๐๐ = ๐๐ญ๐ฒ(๐)
แถ๐๐๐๐ โค แถ๐ โค แถ๐๐๐๐
With โ1.2 โค แถ๐๐ โค 1.2
At some instances, the robot needs to
exceed the velocity bound, and therefore,
the trajectory is not traversed perfectly.
79
Obstacle
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity Circumvention
โข Example 3:
Redundancy Resolution for 3R Robot:
Consider a desired vertical motion (2D) near singular
configuration
From ๐0 = โ180๐, โ175๐, 10๐ ๐ โ ๐0 = ๐ฅ0, ๐ฆ0๐
To ๐๐ = ๐ฅ0, โ0.2๐
In task space:
Move ๐0 = ๐ฅ0, ๐ฆ0๐ โ 1.7, 1.4 ๐ To ๐๐ = ๐ฅ0, 0
๐ in one seconds.
Use cubic trajectory planning:
๐ฅ๐ ๐ก = ๐ฅ0, ๐ฆ๐ ๐ก = ๐ฆ0 โ 3 โ 2๐ก ๐ก2 (๐ฆ0 + 0.2)
In velocity space given: แถ๐ฅ๐ ๐ก = 0, แถ๐ฆ๐ ๐ก = (๐ฆ0 + 0.2)(18๐ก2 โ 6๐ก)
Find ๐ ๐ก = ๐1, ๐2, ๐3๐ to traverse this path while circumventing
singularities.
Consider the base Solution:
แถ๐๐ณ๐บ = ๐ฑโ ๐ แถ๐ where ๐ฑโ = ๐ฑ๐ป ๐ฑ๐ฑ๐ปโ๐
But this solution is close to singular configurations.
80
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Singularity Circumvention
โข Example 2: (Cont.)
Redundancy Resolution for 3R
Robot:
Solve optimization problem
min๐ , แถ๐
๐ ๐ = det( ๐ฝ๐ฝ๐)
Subject to แแถ๐ = ๐ฑ ๐ แถ๐
๐ = ๐๐ญ๐ฒ(๐)
The trajectory is traversed while
getting away from singular
configurations.
81
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Contents
In this chapter we review the Jacobian analysis for serial robots. First the definition to angular and linear velocities are given, then the Jacobian matrix is defined in conventional and screw-based representation, while their general and iterative derivation methods are given. Next the static wrench and its relation to Jacobian transpose is introduced, and Jacobian characteristics such as singularity, isotropy, dexterity and manipulability are elaborated. Inverse Jacobian solution for fully-, under- and redundantly-actuator robots are formulated, and redundancy resolution schemes are detailed. Finally, Stiffness analysis of robotic manipulators is reviewed in detail.
82
Jacobian ChacteristicsSingularity, twist and wrench map, singular configurations, singularity decoupling, dexterity, dexterity ellipsoid, isotropy, manipulability, condition number,
4
Inverse SolutionsInverse map, fully- and under-actuated robots, redundancy, redundancy resolution, optimization problem, inverse acceleration, obstacle avoidance, singularity circumvention.
5
Stiffness AnalysisSources of compliance, Compliance and stiffness matrix, force ellipsoid, case studies.6
PreliminariesAngular velocity, rotation matrix and Euler angle rates, Linear velocity, golden rule in differentiation, twist, screw representation.
1
JacobianDefinition, motivating example, direct approach, general and iterative methods, case studies, screw based Jacobian, general and iterative methods, case studies.
2
Static WrenchWrench definition, principle of virtual work, Jacobian transpose mapping, examples.3
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
Consider a robot in contact to the environment
Applying wrench to the environment
Focus on the deflections resulting by the applied wrench
83
๐ญ๐ธ
๐๐ธ
01
03
0504
02
Stiffness
LinksThe size and material of the links contribute greatly in the stiffness
Robot StructureClosed Kinematic chains cause
higher stiffness to the robot
JointsFlexible versus rigid joints contribute in the compliance of the robot
Control StructureThrough suitable control schemes, the stiffness of the robot might be shaped to the desired value
Actuators and TransmissionsThe main source of compliance in the robots, the flexible
elements in the transmission and force trancducers
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
โข Sources of Stiffness
Consider just the actuators and transmissions
As the main source of compliance
Harmonic Drive Systems
Transmission is performed through a flexible element (Flexspline)
84
Flexspline
Circular spline
Wave generator
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
โข Compliance and Stiffness Matrix
Note the stiffness relation in the ๐๐กโ robot joint
๐๐ = ๐๐ฮ๐๐ Joint stiffness constant: ๐๐
๐๐ denotes the transmitted torque through the actuator
ฮ๐๐ denotes the resulting deflection at the joint
Use vector notation
๐ = ๐ฆ ฮ๐
๐ = ๐1, ๐2, โฆ , ๐๐๐ denotes the vector of transmitted torques
๐ซ๐ = ๐1, ๐2, โฆ , ๐๐๐ denotes the vector of resulting deflections at the joints and
๐ฆ = ๐๐๐๐ ๐1, ๐2, โฆ , ๐๐
Use Jacobian relation
๐ซ๐ = ๐ฑ ๐ซ๐ and ๐ = ๐ฑ๐ป๐
This results in ๐ซ๐ = ๐ฑ ๐ซ๐ = ๐ฑ ๐ฆโ1๐ = ๐ฑ ๐ฆโ1๐ฑ๐ป๐ = ๐ช๐ for a squared Jacobian.
85
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
โข Compliance and Stiffness Matrix
Manipulator Compliance Matrix ๐ช :
๐ซ๐ = ๐ช ๐ where ๐ช๐ร๐ = ๐ฑ ๐ฆโ1๐ฑ๐ป
Manipulator Stiffness Matrix ๐ฒ = ๐ชโ1; the inverse map:
๐ = ๐ฒ ๐ซ๐ where ๐ฒ๐ร๐ = ๐ฑโ๐๐ฆ ๐ฑโ1
Both ๐ช and ๐ฒ are configuration dependent.
For uniform joint stiffness ๐1 = ๐2 = โฏ = ๐๐ = ๐:
๐ช = ๐โ1 ๐ฑ๐ฑ๐ป while ๐ฒ = ๐ ๐ฑ๐ฑ๐ปโ๐
Interesting to reach to the same manipulability matrix ๐ฑ๐ฑ๐ป
Scaled Ellipsoid for Force โ Deflection relation
For a uniform and unit end effector deflection ๐ซ๐ 2 = 1.
๐ซ๐๐ป๐ซ๐ = 1 โ ๐๐ป๐ช๐ป ๐ช ๐ = 1.
86
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
Example: Stiffness Analysis of 2R Manipulator
Inspired by human arm, consider ๐1 = 2, and ๐2 = 1.
Consider ๐2 =๐
2: for this configuration:
๐ช = ๐ฑ๐ฑ๐ป(๐2 =๐
2) =
2 2
2 2; ๐ช๐ป๐ช =
6 4 2
4 2 6
Calculate the compliance map gains
For ๐ช๐ป๐ช โ๐1 = 11.657๐2 = 0.3431
; while ๐ฃ1 =1
2
11, ๐ฃ2 =
1
2
โ11
,
For ๐ช ; ๐บ๐๐๐ = 1/๐๐๐๐ฅ = 0.292๐บ๐๐๐ฅ = 1/๐๐๐๐ = 1.707
; while ิฆ๐ฃ๐๐๐ =11, ิฆ๐ฃ๐๐๐ฅ =
โ11
87
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
Example 1:
Proof of the obtained gains for ๐2 =๐
2configuration:
From ๐ซ๐ 22 = ๐๐ป๐ช๐ป๐ช๐ โ ฮ๐ฅ2 + ฮ๐ฆ2 = 6๐๐ฅ
2 + 8 2๐๐ฅ๐๐ฆ + ๐๐ฆ2
ฮ๐ฅ2 + ฮ๐ฆ2 = 11.657๐๐ฅ
2+๐๐ฆ
2
2
+ 0.343๐๐ฅ
2โ๐๐ฆ
2
2
For ๐ฃ1 =11, ๐๐ฅ = ๐๐ฆ โ ฮ๐ฅ2 + ฮ๐ฆ2 = 11.657 2๐๐ฅ
2โ 2๐๐ฅ
2= 0.085 ฮ๐ฅ2 + ฮ๐ฆ2
โ ๐๐๐๐ = 0.292 ๐ซ๐ =1
๐๐๐๐ฅ๐ซ๐ in ิฆ๐ฃ๐๐๐ =
11
direction
For ๐ฃ1 =โ11
, ๐๐ฅ = โ๐๐ฆ โ ฮ๐ฅ2 + ฮ๐ฆ2 = 0.343 2๐๐ฅ2โ 2๐๐ฅ
2= 2.914 ฮ๐ฅ2 + ฮ๐ฆ2
โ ๐๐๐๐ฅ = 1.707 ๐ซ๐ =1
๐๐๐๐๐ซ๐ in ิฆ๐ฃ๐๐๐ฅ =
โ11
direction
88
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Stiffness Analysis
Example: (Cont.)
For ๐2 =๐
2configuration:
โ ๐๐๐๐ฅ = 1.707 ๐ซ๐ =1
๐๐๐๐๐ซ๐ in ิฆ๐ฃ๐๐๐ฅ direction
โ ๐๐๐๐ = 0.292 ๐ซ๐ =1
๐๐๐๐ฅ๐ซ๐ in ิฆ๐ฃ๐๐๐ direction
89
๐ซ๐ 22 = ๐๐ป๐ช๐ป๐ช๐
ิฆ๐ฃ๐๐๐ฅ =โ11
ิฆ๐ฃ๐๐๐11
๐๐ฅ
๐๐ฆ
1
1
ฮ๐ฅ
ฮ๐ฆ
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Hamid D. Taghirad has received his B.Sc. degree in mechanical engineering
from Sharif University of Technology, Tehran, Iran, in 1989, his M.Sc. in mechanical
engineering in 1993, and his Ph.D. in electrical engineering in 1997, both
from McGill University, Montreal, Canada. He is currently the University Vice-
Chancellor for Global strategies and International Affairs, Professor and the Director
of the Advanced Robotics and Automated System (ARAS), Department of Systems
and Control, Faculty of Electrical Engineering, K. N. Toosi University of Technology,
Tehran, Iran. He is a senior member of IEEE, and Editorial board of International
Journal of Robotics: Theory and Application, and International Journal of Advanced
Robotic Systems. His research interest is robust and nonlinear control applied to
robotic systems. His publications include five books, and more than 250 papers in
international Journals and conference proceedings.
About Hamid D. Taghirad
Hamid D. TaghiradProfessor
Robotics: Mechanics and Control K. N. Toosi University of Technology, Faculty of Electrical Engineering,
Prof. Hamid D. Taghirad Department of Systems and Control, Advanced Robotics and Automated Systems February 6, 2021
Chapter 4: Differential Kinematics
To read more and see the course videos visit our course website:
http://aras.kntu.ac.ir/arascourses/robotics/
Thank You
Robotics: Mechanics & Control