Title: More details and examples on robot arms and kinematics
1More details and examples on robot arms and
kinematics
- Denavit-Hartenberg Notation
2INTRODUCTION
?Forward Kinematics to determine where
the robots hand is?
(If all joint variables are known) ?Inverse
Kinematics to calculate what each joint
variable is?
(If we desire that the hand be
located at a particular
point)
3Direct Kinematics
4Direct Kinematics with no matrices
Direct Kinematics HERE!
5Direct Kinematics
- Position of tip in (x,y) coordinates
6Direct Kinematics Algorithm
Often sufficient for 2D
- 1) Draw sketch
- 2) Number links. Base0, Last link n
- 3) Identify and number robot joints
- 4) Draw axis Zi for joint i
- 5) Determine joint length ai-1 between Zi-1 and
Zi - 6) Draw axis Xi-1
- 7) Determine joint twist ?i-1 measured around
Xi-1 - 8) Determine the joint offset di
- 9) Determine joint angle ?i around Zi
- 1011) Write link transformation and concatenate
7Kinematic Problems for Manipulation
- Reliably position the tip - go from one position
to another position - Dont hit anything, avoid obstacles
- Make smooth motions
- at reasonable speeds and
- at reasonable accelerations
- Adjust to changing conditions -
- i.e. when something is picked up respond to the
change in weight
8ROBOTS AS MECHANISMs
9Robot Kinematics ROBOTS AS MECHANISM
?Multiple type robot have multiple DOF. (3
Dimensional, open loop, chain mechanisms)
Fig. 2.1 A one-degree-of-freedom closed-loop
four-bar mechanism
Fig. 2.2 (a) Closed-loop versus (b) open-loop
mechanism
10Chapter 2Robot Kinematics Position Analysis
Representation of a Point in Space
?A point P in space 3 coordinates
relative to a reference frame
Fig. 2.3 Representation of a point in space
11Chapter 2Robot Kinematics Position Analysis
Representation of a Vector in Space
?A Vector P in space 3
coordinates of its tail and of its head
Fig. 2.4 Representation of a vector in space
12Chapter 2Robot Kinematics Position Analysis
Representation of a Frame at the Origin of a
Fixed-Reference Frame
?Each Unit Vector is mutually perpendicular.
normal, orientation, approach
vector
Fig. 2.5 Representation of a frame at the origin
of the reference frame
13Chapter 2Robot Kinematics Position Analysis
Representation of a Frame in a Fixed Reference
Frame
?Each Unit Vector is mutually perpendicular.
normal, orientation, approach
vector
The same as last slide
Fig. 2.6 Representation of a frame in a frame
14Chapter 2Robot Kinematics Position Analysis
Representation of a Rigid Body
?An object can be represented in space by
attaching a frame to it and representing the
frame in space.
Fig. 2.8 Representation of an object in space
15Chapter 2Robot Kinematics Position Analysis
HOMOGENEOUS TRANSFORMATION MATRICES
- ?A transformation matrices must be in square
form. - It is much easier to calculate the inverse of
square matrices. -
- To multiply two matrices, their dimensions must
match.
16Representation of Transformations of rigid
objects in 3D space
17Chapter 2Robot Kinematics Position Analysis
Representation of a Pure Translation
- ?A transformation is defined as making a movement
in space. - A pure translation.
- A pure rotation about an axis.
- A combination of translation or rotations.
Same value a
identity
Fig. 2.9 Representation of an pure translation in
space
18Chapter 2Robot Kinematics Position Analysis
Representation of a Pure Rotation about an Axis
x,y,z ? n, o, a
?Assumption The frame is at the origin of the
reference frame and parallel to it.
Projections as seen from x axis
Fig. 2.10 Coordinates of a point in a rotating
frame before and after rotation around axis x.
Fig. 2.11 Coordinates of a point relative to the
reference frame and rotating frame as viewed
from the x-axis.
19Representation of Combined Transformations
?A number of successive translations and
rotations.
T1
ai
Fig. 2.13 Effects of three successive
transformations
oi
ni
T2
T3
x,y,z ? n, o, a
Order is important
20x,y,z ? n, o, a
translation
Order of Transformations is important
Fig. 2.14 Changing the order of transformations
will change the final result
21Chapter 2Robot Kinematics Position Analysis
Transformations Relative to the Rotating Frame
?Example 2.8
translation
rotation
Fig. 2.15 Transformations relative to the current
frames.
22MATRICES FORFORWARD AND INVERSE KINEMATICS OF
ROBOTS
- For position
- For orientation
23Chapter 2Robot Kinematics Position Analysis
FORWARD AND INVERSE KINEMATICS OF ROBOTS
?Forward Kinematics Analysis Calculating
the position and orientation of the hand of the
robot. If all robot joint variables are
known, one can calculate where the robot is
at any instant. .
Fig. 2.17 The hand frame of the robot relative to
the reference frame.
24Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Position
?Forward Kinematics and Inverse Kinematics
equation for position analysis (a)
Cartesian (gantry, rectangular) coordinates.
(b) Cylindrical coordinates. (c) Spherical
coordinates. (d) Articulated
(anthropomorphic, or all-revolute) coordinates.
25Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Position (a) Cartesian (Gantry, Rectangular)
Coordinates
?IBM 7565 robot All actuator is linear.
A gantry robot is a Cartesian robot.
Fig. 2.18 Cartesian Coordinates.
26Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Position Cylindrical Coordinates
?2 Linear translations and 1 rotation
translation of r along the x-axis rotation
of ? about the z-axis translation of l
along the z-axis
cosine
sine
Fig. 2.19 Cylindrical Coordinates.
27Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Position (c) Spherical Coordinates
?2 Linear translations and 1 rotation
translation of r along the z-axis rotation
of ? about the y-axis rotation of ? along
the z-axis
Fig. 2.20 Spherical Coordinates.
28Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Position (d) Articulated Coordinates
?3 rotations -gt Denavit-Hartenberg representation
Fig. 2.21 Articulated Coordinates.
29Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Orientation
? Roll, Pitch, Yaw (RPY) angles ? Euler angles ?
Articulated joints
30Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Orientation (a) Roll, Pitch, Yaw(RPY) Angles
Fig. 2.22 RPY rotations about the current axes.
31Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Orientation (b) Euler Angles
Fig. 2.24 Euler rotations about the current axes.
32Chapter 2Robot Kinematics Position Analysis
Forward and Inverse Kinematics Equations for
Orientation
Roll, Pitch, Yaw(RPY) Angles
- Assumption Robot is made of a Cartesian and an
RPY set of joints.
- Assumption Robot is made of a Spherical
Coordinate and an Euler angle.
Another Combination can be possible
Denavit-Hartenberg Representation
33Forward and Inverse Transformations for robot arms
34INVERSE OF TRANSFORMATION MATRICES
- ?Steps of calculation of an Inverse matrix
- Calculate the determinant of the matrix.
- Transpose the matrix.
- Replace each element of the transposed
matrix by its own minor (adjoint matrix). - Divide the converted matrix by the
determinant.
Fig. 2.16 The Universe, robot, hand, part, and
end effecter frames.
35Identity Transformations
36- We often need to calculate INVERSE MATRICES
- It is good to reduce the number of such
operations - We need to do these calculations fast
37How to find an Inverse Matrix B of matrix A?
38Inverse Homogeneous Transformation
39Homogeneous Coordinates
- Homogeneous coordinates embed 3D vectors into 4D
by adding a 1 - More generally, the transformation matrix T has
the form
a11 a12 a13 b1 a21 a22 a23 b2 a31 a32 a33
b3 c1 c2 c3 sf
It is presented in more detail on the WWW!
40For various types of robots we have different
maneuvering spaces
41For various types of robots we calculate
different forward and inverse transformations
42For various types of robots we solve different
forward and inverse kinematic problems
43Forward and Inverse Kinematics Single Link
Example
44Forward and Inverse Kinematics Single Link
Example
easy
45(No Transcript)
46Denavit Hartenberg idea
47DENAVIT-HARTENBERG REPRESENTATION OF
FORWARD KINEMATIC EQUATIONS OF ROBOT
- Denavit-Hartenberg Representation
_at_ Simple way of modeling robot links and
joints for any robot configuration,
regardless of its sequence or complexity.
_at_ Transformations in any coordinates is
possible.
_at_ Any possible combinations of joints and
links and all-revolute articulated robots
can be represented.
48Chapter 2Robot Kinematics Position Analysis
- DENAVIT-HARTENBERG REPRESENTATION
- Symbol Terminologies
? ? A rotation angle between two links, about
the z-axis (revolute). ? d The distance
(offset) on the z-axis, between links
(prismatic). ? a The length of each common
normal (Joint offset). ? ? The twist angle
between two successive z-axes (Joint twist)
(revolute) ? Only ? and d are joint variables.
49? associated with Zi always
Links are in 3D, any shape
50Only translation
Only offset
Only rotation
Only rotation
Axis alignment
Only offset
51DENAVIT-HARTENBERG REPRESENTATION for each link
524 link parameters
53Chapter 2Robot Kinematics Position Analysis
- DENAVIT-HARTENBERG REPRESENTATION
- Symbol Terminologies
? ? A rotation angle between two links, about
the z-axis (revolute). ? d The distance
(offset) on the z-axis, between links
(prismatic). ? a The length of each common
normal (Joint offset). ? ? The twist angle
between two successive z-axes (Joint twist)
(revolute) ? Only ? and d are joint variables.
54The DH Parameter Table
Example with three Revolute Joints
Denavit-Hartenberg Link Parameter Table
Apply first
Apply last
55Denavit-Hartenberg Representation of
Joint-Link-Joint Transformation
56Notation for Denavit-Hartenberg Representation of
Joint-Link-Joint Transformation
Alpha applied first
57Four Transformations from one Joint to the Next
- Order of multiplication of matrices is inverse of
order of applying them - Here we show order of matrices
Joint-Link-Joint
58Denavit-Hartenberg Representation of
Joint-Link-Joint Transformation
How to create a single matrix A n
59EXAMPLE Denavit-Hartenberg Representation of
Joint-Link-Joint Transformation for Type 1 Link
Final matrix from previous slide
substitute
substitute
Numeric or symbolic matrices
60The Denavit-Hartenberg Matrix for another link
type
- Similarity to Homegeneous Just like the
Homogeneous Matrix, the Denavit-Hartenberg Matrix
is a transformation matrix from one coordinate
frame to the next. - Using a series of D-H Matrix multiplications and
the D-H Parameter table, the final result is a
transformation matrix from some frame to your
initial frame.
Put the transformation here for every link
61- In DENAVIT-HARTENBERG REPRESENTATION we must be
able to find parameters for each link - So we must know link types
62(No Transcript)
63Links between revolute joints
64(No Transcript)
65Type 3 Link
Joint n1
xn
Link n
ln0
dn0
Joint n
xn-1
66Type 4 Link
?n-1
Joint n1
Link n
ln0 dn0
Part of dn-1
Joint n
?n
Origins coincide
xn
yn-1
xn-1
67Links between prismatic joints
68(No Transcript)
69(No Transcript)
70Forward and Inverse Transformations on Matrices
71(No Transcript)
72DENAVIT-HARTENBERG REPRESENTATION PROCEDURES
- Start point
- Assign joint number n to the first shown
joint. - Assign a local reference frame for each and
every joint before or - after these joints.
- Y-axis is not used in D-H representation.
73DENAVIT-HARTENBERG REPRESENTATION Procedures for
assigning a local reference frame to each joint
- ? All joints are represented by a z-axis.
- (right-hand rule for rotational joint, linear
movement for prismatic joint) - The common normal is one line mutually
perpendicular to any two skew lines. - Parallel z-axes joints make a infinite number of
common normal. - Intersecting z-axes of two successive joints make
no common normal between them(Length is 0.).
74Chapter 2Robot Kinematics Position Analysis
- DENAVIT-HARTENBERG REPRESENTATION
- Symbol Terminologies Reminder
? ? A rotation about the z-axis. ? d The
distance on the z-axis. ? a The length of
each common normal (Joint offset). ? ? The
angle between two successive z-axes (Joint
twist) ? Only ? and d are joint variables.
75Chapter 2Robot Kinematics Position Analysis
- DENAVIT-HARTENBERG REPRESENTATION
- The necessary motions to transform from one
reference frame to the next.
(I) Rotate about the zn-axis an able of ?n1.
(Coplanar) (II) Translate along zn-axis a
distance of dn1 to make xn and xn1
colinear. (III) Translate along the xn-axis a
distance of an1 to bring the origins of
xn1 together. (IV) Rotate zn-axis about xn1
axis an angle of ?n1 to align zn-axis
with zn1-axis.