Sie sind auf Seite 1von 56

Robotic Manipulators

Direct Kinematics:
The Arm Equation
Dr. Christian Herrmann
Prof. Dr. Klaus Schilling

www7.informatik.uni-wuerzburg.de
Chapter 2
Outline Robotics
2

 Mathematical background
 Vectors, matrices
 Operations on vectors and matrices
 Coordinates and coordinate frames
 Transformations, fundamental rotations, composite rotations
 Representation of rotations

 Homogeneous coordinates and transformations

 Link coordinates and Denavit-Hartenberg representation

 Arm equation
Chapter 2
Notations Robotics
3

 Notations
 Column vector ∈ represented by 1 array, e.g. 3:

 Transpose of vectors:
 Set of vectors: Γ , ,…,
 Matrices: matrix ∈ represented by array

or by its column vectors , ,…, ∈ :



 Matrix defines a linear transformation from vector space
to vector space
– Null space: ∈ : 0
– Range space: ∈ : ∈
– dim dim
Chapter 2
Mathematical Background Robotics
4

 Dot product of two vectors and in


(scalar product, inner Euclidean product)

 Orthogonality: Two vectors and in are orthogonal if and only if ⋅ 0.

 Completeness: An orthogonal set of vectors , ,…, in is complete if


and only if
⋅ 0 for 1 ⇒ 0
i.e. the only vector orthogonal to every member of the set is the zero vector

/
 Norm of a vector in : ⋅ ∑
Chapter 2
Mathematical Background Robotics
5

 Dot product: Angle between two vectors and in :


⋅ cos

 Cross product between two vectors and in is a vector


which is orthogonal to and

det

with being the -th unit vector

Furthermore:
sin
Chapter 2
Mathematical Background: Coordinates Robotics
6

 Coordinates:
Let ∈ and , ,…, be a complete orthonormal set for .
Then the coordinates of with respect to are denoted as and are
implicitly defined by

 Proposition: Orthonormal coordinates:


Let ∈ and let be the coordinates of
w.r.t. to an orthonormal coordinate frame
, ,…, .
Then the -th coordinate of w.r.t to is:
⋅ 1
[Proof]
Chapter 2
Mathematical Background: Coordinates Robotics
7

 Problem of direct kinematics on single axis robot:

⋅ ⋅ ⋅
⋅ ⋅ ⋅

How can we find given ?


Chapter 2 8
Mathematical Background: Transformations Robotics

 Coordinate transformations:
Let , ,…, and , ,…, be orthonormal coordinate
frames for having the same origin. Let be the matrix defined by
⋅ for 1 , . Then it follows for each point ∈ :

is called coordinate transformation matrix.


[Proof, Example]

 Inverse coordinate transformation:


Let and be orthonormal coordinate frames for having the same origin,
and let be the coordinate transformation matrix that maps coordinates
into coordinates.
Then the coordinate transformation matrix which maps into coordinates is
given by , where .
[Proof]
Chapter 2
Direct Kinematics Robotics
9

 Coordinate frames
of serial
manipulators

 Problem definition for direct kinematics:


Given the vector of joint variables (i.e. joint angles and joint distances),
determine the position and orientation of the end-effector (tool) with
respect to the base reference frame of the manipulator.
Chapter 2
Fundamental Rotations Robotics
10

 Fundamental rotations
Rotations of about unit vectors of coordinate frame
Chapter 2
Fundamental Rotations Robotics
11

 Example: Rotation of about with angle


Let

Determining orthogonal and parallel axes:


1 0 0
0
0

Following from dot product and trigonometric identities


(cos 90° sin and cos 90° sin ):
1 0 0
0 cos sin
0 sin cos
Chapter 2
Fundamental Rotations Robotics
12

 Fundamental rotation matrices

1 0 0
0 cos sin
0 sin cos

cos 0 sin
0 1 0
sin 0 cos

cos sin 0
sin cos 0
0 0 1
Chapter 2
Fundamental Rotations Robotics
13

 Example: Rotation of about with angle

 , 2 0 3 , ?

 , 3 4 0 , ?
Chapter 2
Composite Rotations Robotics
14

 Arbitrary rotations possible by appropriate sequence of three fundamental


rotations
 But: matrix multiplication is NOT commutative

 Algorithm for composite rotations


1. Initialize rotation matrix , i.e. and are coincident
2. If mobile coordinate frame is to be rotated by angle about -th unit
vector of , then premultiply to
3. If mobile coordinate frame is to be rotated by angle about its own
-th unit vector, then postmultiply to
4. If more fundamental rotations are to be performed go to step 2, else
stop. The resulting composite rotation matrix maps mobile
coordinates into fixed coordinates.
Chapter 2
Yaw-Pitch-Roll Transformation Robotics
15

 Yaw-Pitch-Roll transformation
Let represent the composite rotation
matrix obtained by rotating a mobile frame
 first about with a yaw of ,
 then about with a pitch of ,
 and finally about with a roll of .

The resulting yaw-pitch-roll matrix


maps coordinates into coordinates.

with cos and sin

[Proof]
Chapter 2
Euler Angles Transformation Robotics
16

 Euler angles
Orientation of with respect to is specified by three angles, called Euler
angles: , , by the following rotations (Z,Y´,Z´´):
1. Rotation about (z axis) with angle
2. Rotation about (new y axis) with angle
3. Rotation about (new z axis) with angle

Note: This is one often used convention, but there are also other conventions
like Z,X´,Z´´
Chapter 2
Euler Angles Transformation Robotics
17

 Visualization of Euler angles in Z,Y´,Z´´ convention


Chapter 2
Homogenous Coordinate Frames Robotics
18

 Unified description of both rotations and translations


Chapter 2
Homogenous Coordinate Frames Robotics
19

 Homogeneous Coordinates
Let be a point in and let be an orthonormal coordinate frame for .
If is any nonzero scale factor, then the homogeneous coordinates of w.r.t.
to are denoted and defined by
1 .
Thus, homogeneous coordinates of ∈ are represented by a vector ∈
.

To recover from , use the homogeneous coordinate conversion matrix


1 0 0 0
with 0 1 0 0.
0 0 1 0

Note: is not unique because of .


In robotics we use 1.
Chapter 2
Homogenous Coordinate Frames Robotics
20

 Homogeneous transformation matrix ∈

with
∈ is a rotation matrix
∈ is a translation vector
∈ is a scaling factor (usually 1)
∈ is a perspective vector, here zero vector
Chapter 2
Homogenous Coordinate Frames Robotics
21

 Translations and rotations in homogeneous coordinate frames

 -th fundamental homogeneous rotation matrix, 1 3

0
0
Rot ,
0
0 0 0 1

 Fundamental homogeneous translation matrix

1 0 0
0 1 0
Tran
0 0 1
0 0 0 1
Chapter 2
Homogenous Coordinate Frames Robotics
22

 Algorithm: Composite homogeneous transformations


1. Initialize transformation matrix , i.e. and are coincident.
2. Represent rotations and translations using separate homogeneous
transformation matrices.
3. Represent composite rotations as separate fundamental homogeneous
rotation matrices.
4. If mobile coordinate frame is to be rotated about or translated along a
unit vector of , then premultiply the appropriate fundamental
homogeneous rotation or translation matrix to
5. If mobile coordinate frame is to be rotated about or translated along
one of its own unit vectors, then postmultiply the appropriate
fundamental homogeneous rotation or translation matrix to
6. If more fundamental rotations or translations are to be performed go to
step 2, else stop. The resulting composite homogeneous transformation
matrix maps mobile into fixed coordinates.
Chapter 2
Homogenous Coordinate Frames Robotics
23

 Example (Assume two initially coincident frames and )


 Suppose we translate along by 3 units and then rotate about by
radians. Find after these transformations.

 Suppose we rotate about by radians and then translate along


by 3 units. Find after these transformations.
Chapter 2
Homogenous Coordinate Frames Robotics
24

 Inverse homogeneous transformation

Let be a homogeneous coordinate transformation matrix with rotation ∈


and translation ∈ between two orthonormal coordinate frames. If
0 and 1, then the inverse of is:


0 0 0 1
[Proof]
Chapter 2
Homogenous Coordinate Frames Robotics
25

 Example: Inverse homogeneous transformation


Let and be fixed and mobile orthonormal coordinate frames as shown in
the figure.
The homogeneous transformation matrix which maps into coordinates is
given by
0 1 0 0
1 0 0 2
T
0 0 1 2
0 0 0 1

Find the homogeneous transformation


matrix which maps into
coordinates, and use it to find .
Chapter 2
Homogenous Coordinate Frames Robotics
26

 Screw Transformation
Let and be initially coincident fixed and mobile orthonormal coordinate
frames, respectively. If is translated along the -th unit vector of by a
displacement of and rotated about the -th unit vector of by an angle of ,
the resulting composite homogeneous screw transformation matrix is

Screw , , Rot , Tran

 Screw pitch:

2
given in threads per unit length.
Pure rotation: 0 ⇒ screw with infinite pitch
Pure translation: 0 ⇒ screw with zero pitch
Right-handed screw ⇒ positive
Chapter 2
Homogenous Coordinate Frames Robotics
27

 Example: Screw transformation


Suppose we perform a screw transformation on initially coincident frames
and by first translating along by a distance of 3 and then rotating
by .
Find after the screw transformation and determine its pitch.
Chapter 2
Link Coordinate Frames Robotics
28

 Robotic arm is a chain of rigid links interconnected by either revolute or


prismatic joints.
 Objective: Assign coordinate frame to each link as prerequisite for determining
the arm equation
 Numbering of links: starting at 0 with fixed base to at the tool
⇒ 1 links for a -axis robot
 Numbering of joints: joint interconnects link 1 with link with 1
 Coordinate frames are assigned to links!
 Special attention for the last link of the tool:
Chapter 2
Denavit-Hartenberg Algorithm Robotics
29

 is the coordinate frame associated with link : , , with 0


 Coordinate frame will be attached to the distal end of link
 Algorithm (part 1: assignment of coordinate frames)
1. Number the joints from 1 to starting with the base and ending with the tool yaw,
pitch and roll, in that order.
2. Assign a right-handed orthonormal coordinate frame to robot base, making
sure that aligns with the axis of joint 1. Set 1.
3. Align with the axis of joint 1.
4. Locate the origin of at the intersection of the and axes. If they do not
intersect, use the intersection of with a common normal between and .
5. Select to be orthogonal to both and . If and are parallel, point
away from .
6. Select to form a right-handed orthonormal coordinate frame .
7. Set ← 1. If , go to step 3, else continue.
8. Set the origin of at the tool tip. Align with the approach vector, with the
sliding vector and with the normal vector of the tool. Set 1.
Chapter 2
Denavit-Hartenberg Algorithm Robotics
30

 Example: D-H algorithm applied on Stäubli RX90 painting robot


 6 axes
 6 DOF
 Reach: 985mm
 Load capacity: 6kg
Chapter 2
Denavit-Hartenberg Algorithm Robotics
31

 Coordinate frame for Stäubli RX90 painting robot


Chapter 2
Denavit-Hartenberg Algorithm Robotics
32

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
33

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
34

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
35

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
36

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
37

 Coordinate frame for Stäubli RX90 painting robot

Frame
Chapter 2
Denavit-Hartenberg Algorithm Robotics
38

 Algorithm (part 2: determination of kinematic parameters)

9. Locate point at the intersection of the and axes. If they do not


intersect, use the intersection of with a common normal between
and .

10. Compute as the angle of rotation from to measured about


.
11. Compute as the distance from the origin of frame to point
measured along .
12. Compute as the distance from point to the origin of frame
measured along .

13. Compute as the angle of rotation from to measured about .


14. Set ← 1. If , go to step 9, else stop.
Chapter 2
Kinematic Parameters Robotics
39

 4 kinematic parameters of a -axis robot constitute the minimum set required


to specify the kinematic configuration

 Parameters depend on mechanical design, three of them are fixed for each
link/joint, variable one is called joint variable

Arm Parameter Symbol Revolute joint Prismatic joint


Joint angle Variable Fixed
Joint distance Fixed Variable
Link length Fixed Fixed
Link twist angle Fixed Fixed
Chapter 2
Denavit-Hartenberg Algorithm Robotics
40

 Visualization of kinematic parameters


Chapter 2
Denavit-Hartenberg Algorithm Robotics
41

 Example: D-H algorithm applied to Microbot Alpha II robot arm


Chapter 2
Link Coordinates Robotics
42

 Kinematic parameters of a joint

 Joint angle : rotation about


making parallel to
 Joint distance : translation along
, so that intersects
 is variable for revolute joint
 is variable for prismatic joint

 Kinematic parameters of a link

 Link length : translation along ,


so that intersects

 Link twist angle : rotation around ,


making parallel to
 and are always fixed
Chapter 2
Arm Matrix Robotics
43

 Determine the homogeneous transformation matrix, mapping frame


coordinates into frame 1 coordinates

 Successively rotate and translate frame to render it


coincident with frame

 Therefore use kinematic parameters associated with link

 Four steps, each of them using one kinematic parameter:

 Rotate about by ⇒ and become parallel

 Translate along by ⇒ and become colinear

 Translate along by ⇒ Origins of and become equal

 Rotate about by ⇒ and become colinear


Chapter 2
Arm Matrix Robotics
44

 Previous transformations are interpreted as transformations on mobile frames


⇒ Postmultiplication for composite transformation
, , , Rot , 3 Tran , Tran , Rot ,1
Screw , , 3 Screw , ,1
maps coordinates into 1 coordinates

 Link-coordinate transformation: Let , ,…, be a set of link-coordinate


frames assigned by the D-H algorithm and let and be the
homogeneous coordinates of a point w.r.t. frames and , respectively.
Then for 1 , we have

with

0
0 0 0 1
Chapter 2
Arm Matrix Robotics
45

 The inverse operation is given by


0

0 0 0 1

 Recall that only one of the joint parameters or is variable

 Therefore introduce joint type parameter, defined by


1 ; joint k is revolute
0 ; joint k is prismatic

 Then define the -th joint variable


1
can be seen as a generalized joint variable, selecting either for revolute
or for prismatic joints
Chapter 2
Arm Matrix Robotics
46

 Composite arm matrix


Let , ,…, be the vector of joint variables for an -axis robot.
The homogeneous transformation matrix describes the
transformation from tool coordinates (link ) to base coordinates (link 0):

 Helpful partition of the problem:

, , , ,…,
Chapter 2
Arm Equation Robotics
47

 Arm equation:



0 0 0 1

with ∈ specifying the


orientation of the tool as rotation
matrix.
The three columns of are
the three unit vectors of the tool
frame w.r.t. the base frame.

Translation vector ∈
specifies the position of the tool tip
in relation to the base frame.
Chapter 2
Arm Equation Robotics
48

 Example: Five-axis articulated Rhino XR-3

[shown in home position]


Chapter 2
Arm Equation Robotics
49

 Example: Five-axis articulated Rhino XR-3

Axis Home ( )
1 26.04cm 0 /2 0
2 0 22.86cm 0 /2
3 0 22.86cm 0 /2
4 0 0.95cm /2 0
5 16.83cm 0 0 /2


0 0 0 0
0 0 0 0

0 1 0 0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1


0
0 0 0 1
Chapter 2
Arm Equation Robotics
50

 Example: Five-axis articulated Rhino XR-3


Inspection of home position:
1 0 0
0 0 1 0
0 1 0
0 0 0 1

Computing :

0 0 0
0 0 0
0 1 0 0 0 0 1
0 0 0 1 0 0 0 1

0 0
0 0 0 1
Chapter 2
Arm Equation Robotics
51

 Example: Five-axis articulated Rhino XR-3

0 0 0 1

Inspection of home position:


0 1 0
1 0 0 0
0 0 1
0 0 0 1
Chapter 2
Arm Equation Robotics
52

 Example: Four-axis SCARA robot (Adept One)


Chapter 2
Arm Equation Robotics
53

 Example: Four-axis SCARA robot (Adept One)

Axis Home ( )
1 877mm 425mm 0
2 0 375mm 0 0
3 0 0 0 100mm
4 200mm 0 0 /2


0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0

0 0 1 0 0 1 0 0 0 1 0 0 1
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
0
0

0 0 1
0 0 0 1
Chapter 2
Arm Equation Robotics
54

 Example: Six-axis articulated robot Intelledex 660


Chapter 2
Arm Equation Robotics
55

 Example: Six-axis articulated robot Intelledex 660


Chapter 2
Arm Equation for Robot Control? Robotics
56

Das könnte Ihnen auch gefallen