Upload
merle
View
51
Download
0
Tags:
Embed Size (px)
DESCRIPTION
More details and examples on robot arms and kinematics. Denavit-Hartenberg Notation. INTRODUCTION. Forward Kinematics : to determine where the robot ’ s hand is? (If all joint variables are known) Inverse Kinematics: to calculate what each joint variable is? - PowerPoint PPT Presentation
Citation preview
More details and examples on More details and examples on robot arms and kinematicsrobot arms and kinematics
Denavit-Hartenberg Denavit-Hartenberg NotationNotation
INTRODUCTIONINTRODUCTION
Forward Kinematics: to determine where the robot’s 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)
Direct Kinematics
Direct Kinematics with no matriceswith no matrices
Where is my hand?
Direct Kinematics:HERE!
Direct Kinematics• Position of tip in (x,y) coordinates
Direct Kinematics Algorithm1) Draw sketch2) Number links. Base=0, Last link = n3) Identify and number robot joints4) Draw axis Zi for joint i5) 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
10+11) Write link transformation and concatenate
Often sufficient for
2D
Kinematic Problems for Manipulation
• Reliably position the tip - go from one position to another position
• Don’t 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
ROBOTS AS ROBOTS AS MECHANISMsMECHANISMs
Robot Kinematics: Robot Kinematics: ROBOTS AS MECHANISM
Fig. 2.1 A one-degree-of-freedom closed-loop four-bar mechanism
Multiple type robot have multiple DOF. (3 Dimensional, open loop, chain mechanisms)
Fig. 2.2 (a) Closed-loop versus (b) open-loop mechanism
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.3 Representation of a point in space
A point P in space : 3 coordinates relative to a reference frame
^^^
kcjbiaP zyx
Representation of a Point Representation of a Point in Spacein Space
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.4 Representation of a vector in space
A Vector P in space : 3 coordinates of its tail and of its head
^^^__
kcjbiaP zyx
w
z
y
x
P__
Representation of a Vector Representation of a Vector in Spacein Space
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.5 Representation of a frame at the origin of the reference frame
Each Unit Vector is mutually perpendicular. : normal, orientation, approach vector
zzz
yyy
xxx
aon
aon
aon
F
Representation of a Frame Representation of a Frame at the at the OriginOrigin of a Fixed-Reference Frame of a Fixed-Reference Frame
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.6 Representation of a frame in a frame
Each Unit Vector is mutually perpendicular. : normal, orientation, approach vector
1000
zzzz
yyyy
xxxx
Paon
Paon
Paon
F
Representation of a Frame Representation of a Frame in ain a Fixed Reference Frame Fixed Reference Frame
The same as last slide
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.8 Representation of an object in space
An object can be represented in space by attaching a frame to it and representing the frame in space.
1000
zzzz
yyyy
xxxx
objectPaon
Paon
Paon
F
Representation of a Rigid Representation of a Rigid BodyBody
Chapter 2Robot Kinematics: Position Analysis
A transformation matrices must be in square form.
• It is much easier to calculate much easier to calculate the inverse of square matrices. • To multiply two matrices, their dimensions must match.
1000
zzzz
yyyy
xxxx
Paon
Paon
Paon
F
HOMOGENEOUS HOMOGENEOUS TRANSFORMATION MATRICESTRANSFORMATION MATRICES
Representation Representation of of
Transformations Transformations of rigid objects of rigid objects
in 3D space in 3D space
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.9 Representation of an pure translation in space
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.
1000
100
010
001
z
y
x
d
d
d
T
Representation of a Pure Representation of a Pure TranslationTranslation
identity
Same value a
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.10 Coordinates of a point in a rotating frame before and after rotation around axis x.
Assumption : The frame is at the origin of the reference frame and parallel to it.
Fig. 2.11 Coordinates of a point relative to the reference frame and rotating frame as viewed from the x-axis.
Representation of a Pure Representation of a Pure RotationRotation about an Axis about an Axis
Projections as seen from x axis
x,y,z n, o, a
Fig. 2.13 Effects of three three successive successive transformations
A number of successive translations and rotations….
Representation of Combined Representation of Combined Transformations Transformations
Order is Order is importantimportant
x,y,z n, o, a
nioi
ai T1
T2
T3
Fig. 2.14 Changing the order of transformations will change the final result
Order of Order of TransformationTransformations is important s is important
x,y,z n, o, a
translation
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.15 Transformations relative to the current frames.
Example 2.8
Transformations Relative Transformations Relative to the Rotating Frameto the Rotating Frame
translation
rotation
MATRICES FORMATRICES FORFORWARDFORWARD AND AND
INVERSEINVERSE KINEMATICS OF KINEMATICS OF
ROBOTSROBOTS
• For position• For orientation
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.17 The hand frame of the robot relative to the reference frame.
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. .
FORWARDFORWARD AND AND INVERSEINVERSE KINEMATICS KINEMATICS OF ROBOTSOF ROBOTS
Chapter 2Robot Kinematics: Position Analysis
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.
Forward and Inverse KinematicsForward and Inverse Kinematics Equations for Equations for PositionPosition
Chapter 2Robot Kinematics: Position Analysis
IBM 7565 robot • All actuator is linear. • A gantry robot is a Cartesian robot.
Fig. 2.18 Cartesian Coordinates.
1000
100
010
001
z
y
x
cartPR
P
P
P
TT
Forward and Inverse KinematicsForward and Inverse Kinematics Equations for PositionEquations for Position (a) (a) CartesianCartesian (Gantry, (Gantry,
Rectangular) CoordinatesRectangular) Coordinates
Chapter 2Robot Kinematics: Position Analysis
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
Fig. 2.19 Cylindrical Coordinates.
1000
100
0
0
l
rSCS
rCSC
TT cylPR
,0,0))Trans(,)Rot(Trans(0,0,),,( rzllrTT cylPR
Forward and Inverse KinematicsForward and Inverse Kinematics Equations Equations for Position:for Position:
Cylindrical CoordinatesCylindrical Coordinates
cosine
sine
Chapter 2Robot Kinematics: Position Analysis
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.
1000
0
rCCS
SrSSSCSC
CrSCSSCC
TT sphPR
))Trans()Rot(Rot()( 0,0,,,,, yzlrsphPR TT
Forward and Inverse KinematicsForward and Inverse Kinematics Equations Equations for Positionfor Position
(c) (c) Spherical CoordinatesSpherical Coordinates
Chapter 2Robot Kinematics: Position Analysis
3 rotations -> Denavit-Hartenberg representation
Fig. 2.21 Articulated Coordinates.
Forward and Inverse KinematicsForward and Inverse Kinematics Equations Equations for Positionfor Position
(d) (d) Articulated CoordinatesArticulated Coordinates
Chapter 2Robot Kinematics: Position Analysis
Roll, Pitch, Yaw (RPY) angles
Euler angles
Articulated joints
Forward and Inverse Kinematics Equations for
Orientation
Chapter 2Robot Kinematics: Position Analysis
Roll: Rotation of about -axis (z-axis of the moving frame)
Pitch: Rotation of about -axis (y-axis of the moving frame)
Yaw: Rotation of about -axis (x-axis of the moving frame)
aaon
on
Fig. 2.22 RPY rotations about the current axes.
Forward and Inverse Kinematics Equations for Orientation
(a) Roll, Pitch, Yaw(RPY) Angles
Chapter 2Robot Kinematics: Position Analysis
Fig. 2.24 Euler rotations about the current axes.
Rotation of about -axis (z-axis of the moving frame) followed by
Rotation of about -axis (y-axis of the moving frame) followed by
Rotation of about -axis (z-axis of the moving frame).
a
oa
Forward and Inverse Kinematics Equations for Orientation
(b) Euler Angles
Chapter 2Robot Kinematics: Position Analysis
)()( ,,,, noazyxcartHR RPYPPPTT
)()( ,,,, EulerTT rsphHR
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
Forward and Inverse Forward and Inverse KinematicsKinematics Equations for OrientationEquations for Orientation
Roll, Pitch, Yaw(RPY) Angles
Forward and Forward and Inverse Inverse
Transformations Transformations for robot armsfor robot arms
Fig. 2.16 The Universe, robot, hand, part, and end effecter frames.
Steps of calculation of an Inverse matrix: 1. Calculate the determinant of the matrix.2. Transpose the matrix.3. Replace each element of the transposed matrix by its own minor
(adjoint matrix).4. Divide the converted matrix by the determinant.
INVERSE OF TRANSFORMATION MATRICES
Identity Identity TransformationsTransformations
1. We often need to calculate
INVERSE MATRICES
2.2. It is good to reduce the number It is good to reduce the number of such operationsof such operations
3.3. We need to do these calculations We need to do these calculations fastfast
How to find an Inverse Matrix B of How to find an Inverse Matrix B of matrix A?matrix A?
Inverse Homogeneous Inverse Homogeneous TransformationTransformation
Homogeneous Coordinates• Homogeneous coordinates: embed 3D
vectors into 4D by adding a “1”• More generally, the transformation matrix
T has the form:
FactorScalingTrans. Perspect.
Vector Trans. MatrixRot.T
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!
For various types of robots For various types of robots we have different we have different maneuvering spacesmaneuvering spaces
For various types of robots we calculate For various types of robots we calculate different forward and inverse different forward and inverse
transformationstransformations
For various types of robots we solve different forward and inverse For various types of robots we solve different forward and inverse kinematic problemskinematic problems
Forward and Forward and Inverse Kinematics: Inverse Kinematics: Single Link ExampleSingle Link Example
Forward and Inverse Kinematics: Forward and Inverse Kinematics: Single Link ExampleSingle Link Example
easy
Denavit – Denavit – Hartenberg Hartenberg
ideaidea
Denavit-Hartenberg Representation :
Fig. 2.25 A D-H representation of a general-purpose joint-link combination
@ Simple way of modeling robot links and joints for any robot configurationany robot configuration, regardless of its sequence or complexity.
@ Transformations in any coordinatesin any coordinates is possible.
@ Any possible combinations of joints and links and all-revolute articulated robots can be represented.
DENAVIT-HARTENBERG REPRESENTATION OF FORWARD KINEMATIC EQUATIONS OF ROBOT
Chapter 2Robot Kinematics: Position Analysis
⊙ : A rotation angle between two links, about the z-axis
(revolute).
⊙ d : The distance (offsetoffset) 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.
DENAVIT-HARTENBERG REPRESENTATIONDENAVIT-HARTENBERG REPRESENTATION
Symbol Terminologies :
Links are in 3D, any shape
associated with Zi always
Only rotation Only translation Only offset
Only offset Only rotation Axis alignment
DENAVIT-DENAVIT-HARTENBERG HARTENBERG
REPRESENTATIOREPRESENTATION for N for each linkeach link
4 link parameters4 link parameters
Chapter 2Robot Kinematics: Position Analysis
⊙ : 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.
DENAVIT-HARTENBERG REPRESENTATIONDENAVIT-HARTENBERG REPRESENTATION
Symbol Terminologies :
Example with three Revolute Joints
i (i-1) a(i-1) di
i
0 0 0 0 0
1 0 a0 0 1
2 -90 a1 d2 2
Z0
X0
Y0
Z1
X2
Y1
Z2
X1
Y2
d2
a0 a1
Denavit-Hartenberg Link Denavit-Hartenberg Link Parameter TableParameter Table
The DH The DH Parameter Parameter
TableTable
Apply first Apply last
Denavit-Hartenberg Representation of Denavit-Hartenberg Representation of Joint-Link-Joint TransformationJoint-Link-Joint Transformation
NotationNotation for Denavit-Hartenberg for Denavit-Hartenberg Representation of Joint-Link-Joint Representation of Joint-Link-Joint
TransformationTransformation
Alpha applied first
Four Transformations from one Joint to the NextFour 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-JointJoint-Link-Joint
Denavit-Hartenberg
Representation of Joint-Link-
Joint Transformation
• Alpha is applied first
How to How to create a create a single single matrix A matrix A nn
EXAMPLE: Denavit-Hartenberg Representation of Joint-Link-Joint Transformation for Type 1 LinkType 1 Link
Final matrix from previous slide
substitute
substitute
Numeric or symbolic matrices
The Denavit-The Denavit-Hartenberg Matrix for Hartenberg Matrix for another link typeanother link type
1000
cosαcosαsinαcosθsinαsinθ
sinαsinαcosαcosθcosαsinθ
0sinθcosθ
i1)(i1)(i1)(ii1)(ii
i1)(i1)(i1)(ii1)(ii
1)(iii
d
d
a
• Similarity to HomegeneousSimilarity to Homegeneous: Just like the Homogeneous Matrix, the Denavit-Hartenberg Matrix is a transformation matrix from one coordinate frame to the next. 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.
Z(i - 1)
X(i -1)
Y(i -1)
( i -
1)
a(i - 1 )
Z i Y
i X
i
a
i
d
i
i
Put the transformation here for every link
1.1. InIn DENAVIT- DENAVIT-HARTENBERG HARTENBERG REPRESENTATION REPRESENTATION we we must be able to find must be able to find parameters for parameters for each linkeach link
2.2. So we must know link typesSo we must know link types
Links between Links between revoluterevolute joints joints
llnn=0=0
Type 3 Type 3 LinkLink
Joint n+1Joint n+1
Joint nJoint n
ddnn=0=0
Link nLink n
xxn-1n-1
xxnn
ln=0dn=0
Type 4 Link
Origins coincide
n-1n-1
Joint n+1Joint n+1
Joint nJoint n
Part of Part of ddn-1n-1
Link nLink n
xxn-1n-1 yyn-1n-1
xxnn
nn
Links between Links between prismaticprismatic
jointsjoints
ForwardForward and and InverseInverse Transformations Transformations on on
MatricesMatrices
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.
DENAVIT-HARTENBERG DENAVIT-HARTENBERG REPRESENTATION REPRESENTATION
PROCEDURESPROCEDURES
1. .All joints are represented by a z-axis ٭
• (right-hand rule for rotational joint, linear movement for
prismatic joint)
2. The common normal is one line mutually perpendicular to
any two skew lines.
3. Parallel z-axes joints make a infinite number of common
normal.
4. Intersecting z-axes of two successive joints make no
common normal between them(Length is 0.).
DENAVIT-HARTENBERG REPRESENTATION
Procedures for assigning a local reference frame to each joint:
Chapter 2Robot Kinematics: Position Analysis
⊙ : A rotation about the z-axis.
⊙ dd : The distance on the z-axis.
⊙ aa : The length of each common normal (Joint
offset).
⊙ : The angle between two successive z-axes
(Joint twist)
Only and d are joint variables.
DENAVIT-HARTENBERG REPRESENTATIONDENAVIT-HARTENBERG REPRESENTATION
Symbol Terminologies ReminderReminder:
Chapter 2Robot Kinematics: Position Analysis
(I) Rotate about the zn-axis an able of n+1. (Coplanar)
(II) Translate along zn-axis a distance of dn+1 to make xn and xn+1
colinear.
(III) Translate along the xn-axis a distance of an+1 to bring the
origins
of xn+1 together.
(IV) Rotate zn-axis about xn+1 axis an angle of n+1 to align zn-axis
with zn+1-axis.
DENAVIT-HARTENBERG REPRESENTATION
The necessary motions to transform from one reference frame from one reference frame to the
next.