1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

CRC Press - Robotics and Automation Handbook Episode 1 Part 6 pot

17 324 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 695,12 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

For the five-degrees-of-freedom manipulator, starting from the base joint, joints 1, 3, and 5 are revolute joints, while joints 2 and 4 are prismatic joints... The first step in determin

Trang 1

Axis Number

Twist angle

ai

Link length

ai

Link offset

di

Joint angle

qi

1 2

n

a1

a2

an

a1

a2

an

d1

d2

dn

q1

q2

qn

D-H Parameters Table

Z1

q3

Y2

Z2

X2

Y1

q2

Y0

q1

X0

Z0

X1

a2

d1

a2

Determine ai

Z1

Z0

q3

Y2

Z2

X2

Y1

q2

Y0

q1

X0

X1

a2

d1 Determine di and ai

8.3 Algorithm for Determining the Homogenous Transformation

Matrix, A◦ n

After determining the D-H parameters, the next step is to derive the homogeneous transformation matrix

from one frame to the next We will denote the U i(θ i ) matrix as the rotation matrix about the Z i−1

axis while the V i(α i ) matrix as the rotation matrix denoting the rotation about the X iaxis To perform coordinate transformation from reference frame{F i } to reference frame {F i−1}, we need to derive the

rotation matrix and the displacement vector The rotation matrix from{F i } to {F i−1} is given by

Trang 2

D-H Convention 8-7

where U i(θ i) is given by

U i(θ i)=

cos(θ i) − sin(θ i) 0 sin(θ i) cos(θ i) 0

and V i(α i) is given by

V i(α i)=

10 cos(0α 0

i) − sin(α i)

0 sin(α i) cos(α i)

The homogeneous transformation matrix transforming coordinates from{F i } to {F i−1} is given by

A i i−1= A i−1

where A i

i is the screw displacement about the axis x ithrough an angleα i and distance a i Similarly, A i i−1

is the screw displacement about the axis z i through an angleθ i and distance d i The expression for A i i−1

and A i iis given by

A i i−1 =

0

U i3×3 0

d i

A i i=

a i

V i3×3 0

0

Consequently,

A i i−1=

0

d i

a i

0

=



U i V i U i s i



(8.20)

Expanding the various terms in Equation (8.20) we get

U i V i=

c s θ θ i −s θ i 0

i c θ i 0

10 c0α 0

i −s α i

0 s α i +cα i

=

c s θ θ i −s θ i c α i sθ i sα i

i c θ i c α i −cθ i s α i

U i s i=

c s θ θ i −sθ i 0

i c θ i 0

a0i 0

+

00

d i

=

c s θ θ i a i

i a i

d i

where

s i=

a0i

d i

Trang 3

on

o1

d 0

A0

o2

on− 1

Performing the composition from the nth frame to the base frame (see Figure 8.5), we get

A0n = A0

1A12 A n−1

n =



R0 d0



(8.23)

Based on Equations (8.20) and (8.23) we can write

R n0= (U1V1)(U2V2)· · · (U n V n) (8.24) and

d n0= U1s1+ U1V1U2s2+ U1V1U2V2U3s3 + U1V1U2V2 U n−1V n−1U n s n (8.25)

8.4 Examples

Example 8.1

Figure 8.6is an example of a robotic arm manipulator with five joints In this manipulator, three joints are rotational and two joints are prismatic Thus, the robot has five degrees of freedom

No Twist Angleα i Link Length a i Joint Offset d i Joint Angleθ i

1

3

5

The first step in determining the D-H parameters is to locate the joints of the robot arm manipulator and determine if the joint is prismatic or revolute For the five-degrees-of-freedom manipulator, starting from the base joint, joints 1, 3, and 5 are revolute joints, while joints 2 and 4 are prismatic joints Because

Trang 4

8-10 Robotics and Automation Handbook

expression in Equation (8.24) and Equation (8.25) we get

R0= (U1V1)(U2V2)(U3V3)(U4V4)(U5V5) (8.26)

d50= U1s1+ (U1V1)U2s2+ (U1V1)(U2V2)U3s3+ (U1V1)(U2V2)(U3V3)U4s4

The following matrices are the individual U and V matrices for each axis of the manipulator.

U1=

cos(θ1) − sin(θ1) 0 sin(θ1) cos(θ1) 0

1 0 0

0 1 0

0 0 1

U2=

1 0 0

0 1 0

0 0 0

U3=

cos(θ3) − sin(θ3) 0 sin(θ3) cos(θ3) 0

U4=

1 0 00 1 0

0 0 1

1 0 00 1 0

0 0 1

U5=

cos(sin(θ θ5) − sin(θ5) 0

5) cos(θ5) 0

1 0 00 1 0

0 0 1

Similarly the s ivector is given by

s1=

0 0 0

0 0

d2

0 0 0

0 0

d4

0 0 0

Substituting the above U i , V i , and s iinto Equation (8.26) and Equation (8.27) we get

R50=

C1C3C5+ S1S5 −C1C3S5+ S1C5 C1S3

S1C3C5− C1S5 −S1C3S5− C1C5 S1S3

d0=

C1S3d4

S1S3d4

d2− C3d4

where C a = cos(a) and S a = sin(a).

The final transformation matrix is thus given by

A0=

C1C3C5+ S1S5 −C1C3S5+ S1C5 C1S3 C1S3d4

S1C3C5− C1S5 −S1C3S5− C1C5 S1S3 S1S3d4

S3C5 −S3S5 −C3 d2− C3d4

Trang 5

TABLE 8.1 D-H Parameters for the SCARA

No Twist Angleα i Link Length a i Link Offset d i Joint Angleθ i

1

2

4

Example 8.2: The SCARA Robot

The SCARA robot is a four axis robot arm manipulator with three revolute joints and one prismatic joint

(see Figure 8.7 and Table 8.1) The name SCARA is an acronym for selective compliance assembly robot arm.

The first step in determining D-H parameters for the SCARA is to locate the joints and determine the rotation or translation of each joint The SCARA has four joints with three of them being revolute joints and one prismatic joint Each of the revolute joints, 1, 2, and 4, have aθ value of θvariable

i with i being the

joint number The prismatic joint (joint 3) has aθ value of zero and a d value of dvariable

3 Starting from the base, the joint coordinate frames are assigned based on the algorithm outlined before

Having established the coordinate frames, the next step is the determination of the D-H parameters

We begin by first determiningα i.α i is the rotation about X i to make Z i−1parallel with Z i(starting from

Zi−1) Starting with axis 1, the rotation about X1to make Z0parallel to Z1is 0 because they are parallel For axis 2, theα is π or 180because Z

2is pointing down along the translation of the prismatic joint.α3 andα4are zero because Z3and Z4are parallel with Z2and Z3, respectively

The next step is to determine a i and d i a i is the link length and always points away from the Z i−1axis.

d i is the offset and is always along the Z i−1axis For axis 1, there is an offset between axes 1 and 2 in the

BASE

PRISMATIC JOINT

d1

X1

X2

X3

X4

X0

Y1

Y2

Y3

Y4

Y0

Z2

Z3

Z1

Z4

Z0

q2

d4

d3

Trang 6

8-12 Robotics and Automation Handbook

Z0direction so the offset is equal to d1 There is also a distance between the axes, which is equal to a1 For

axis 2, there is a distance between axes 2 and 3 away from the Z1axis equal to a2 d2is equal to zero Axis

3 is a prismatic joint, so d is variable, i.e., d3Variable Between axes 3 and 4, there is an offset only in the Z direction, so d4is equal to this distance a3and a4are both zero

Having determined all the D-H parameters, the transformation matrix A0 can now be computed

The transformation matrix consists of the rotation matrix R0and the displacement vector d0 Using the expression in Equation (8.24) and Equation (8.25) we get

R0= (U1V1)(U2V2)(U3V3)(U4V4) (8.31)

d0= U1s1+ (U1V1)U2s2+ (U1V1)(U2V2)U3s3+ (U1V1)(U2V2)(U3V3)U4s4 (8.32)

The following matrices are the individual U and V matrices for each axis of the manipulator.

U1=

cos(θ1) − sin(θ1) 0 sin(θ1) cos(θ1) 0

1 0 0

0 1 0

0 0 1

U2=

cos(θ2) − sin(θ2) 0 sin(θ2) cos(θ2) 0

U3=

1 0 00 1 0

0 0 1

1 0 00 1 0

0 0 1

U4=

cos(θ4) − sin(θ4) 0 sin(θ4) cos(θ4) 0

1 0 0

0 1 0

0 0 1

Similarly the s ivector is given by

s1=

a1 0

d1

a2 0 0

0 0

d3

0 0

d4

Substituting the above U i , V i , and s iinto Equation (8.31) and Equation (8.32) we get

R0=

C12C4+ S12S4 −C12S4+ S12C4 0

S12C4− C12S4 −S12S4− C12C4 0

d40=

C1a1+ C12a2

S1a1+ S12a2

d1− d3− d4

where C a = cos(a), S a = sin(a), C ab = cos(a + b) and S ab = sin(a + b).

The final transformation matrix is

A04=

C12C4+ S12S4 −C12S4+ S12C4 0 C1a1+ C12a2

S12C4− C12S4 −S12S4− C12C4 0 S1a1+ S12a2

Trang 7

d2

d1

d3

d6

X5

X6

Z1

Z5

Z6

Z3

Z4

X2

X0

Y4

Y3

Y1

Y0

X4

Y2

Y6

Y5

q5

q6

q4

q2

q1

Z0

BASE

PRISMATIC JOINT

X3

Z2

X1

Example 8.3: The Stanford Arm

Designed in 1969 by Victor Scheinman, the Stanford arm was one of the first robots exclusively designed for computer control.1The Stanford arm is a 6-axis robot manipulator with five revolute joints and one prismatic joint, giving it six degrees of freedom

The first step in determining the D-H parameters for the Stanford arm is to locate the joints and determine if the joint is prismatic or revolute(Table 8.2).Starting from the base joint, joints 1, 2, 4, 5, and

6 are all revolute joints Theθ ivalues areθVariable

1 ,θVariable

2 ,θVariable

4 ,θVariable

5 , andθVariable

6 , respectively Since there is no rotation about prismatic joints,θ3is equal to zero but d3is equal to dVariable

3 Starting from the base, the joint coordinate frames are assigned based on the algorithm outlined before

Having established the coordinate frames, the next step is to determine the D-H parameters We begin

by first determiningα i.α i is the rotation about X i to make Z i−1parallel with Z i For axis 1, the rotation

required about X1to take Z0parallel to Z1is−90◦or−π/2 Similarly α2andα5are equal to 90◦orπ/2.

For axes 3 and 6, Z i−1and Z iare parallel, soα3andα6are equal to zero

Trang 8

D-H Convention 8-15

Substituting the above U i , V i , and s i into Equation (8.36) and Equation (8.37), we get the following,

where C i = cos(i) and S i = sin(i):

R0=

r11 r12 r13

r21 r22 r23

r31 r32 r33

r11= ((C1C2C4− S1S4)C5− C1S2S5)C6+ (−C1C2S4− S1C4)S6

r12= −((C1C2C4− S1S4)C5− C1S2S5)S6+ (−C1C2S4− S1C4)C6

r13= (C1C2C4− S1S4)S5+ C1S2C5

r21= ((S1C2C4+ C1S4)C5− S1S2S5)C6+ (−S1C2S4+ C1C4)S6

r22= −((S1C2C4+ C1S4)C5− S1S2S5)S6+ (−S1C2S4+ C1C4)C6

r23= (S1C2C4+ C1S4)S5+ S1S2C5

r31= (−S2C4C5− C2S5)C6+ S2S4S6

r32= −(−S2C4C5− C2S5)S6+ S2S4C6

r33= −S2C4S5+ C2C5

d60=

d11

d21

d31

d11= −S1d2+ C1S2d3+ ((C1C2C4− S1S4)S5+ C1S2C5)d6

d21= C1d2+ S1S2d3+ ((S1C2C4+ C1S4)S5+ S1S2C5)d6

d31= d1+ C2d3+ (−S2C4S5+ C2C5)d6 The final transformation matrix is

A06=



R0 d0



(8.40)

Example 8.4: The Mitsubishi PA-10 Robot Arm

The Mitsubishi PA-10 robot arm is a 7-joint robot manipulator All seven of the joints are revolute, and thus the manipulator has seven degrees of freedom The first step in determining the D-H parameters of the Mitsubishi PA-10 robot arm is to locate each joint and determine whether it is rotational or prismatic (Table 8.3 andFigure 8.9).As seen in Figure 8.9, all the joints are rotational joints Because all the joints are rotational theθ ivalues are variable Starting from the base, the joint coordinate frames are assigned based on the algorithm outlined before

No Twist Angleα i Link Length a i Joint Offset d i Joint Angleθ i

1

2

3

4

5

6

7

Trang 9

The following matrices are the individual U and V matrices for each axis of the manipulator.

U1=

cos(θ1) − sin(θ1) 0 sin(θ1) cos(θ1) 0

U2=

cos(sin(θ θ2) − sin(θ2) 0

10 0 00 1

U3=

cos(θ3) − sin(θ3) 0 sin(θ3) cos(θ3) 0

U4=

cos(θ4) − sin(θ4) 0 sin(θ4) cos(θ4) 0

U5=

cos(sin(θ θ5) − sin(θ5) 0

1 00 0 −10

U6=

cos(θ6) − sin(θ6) 0 sin(θ6) cos(θ6) 0

U7=

cos(θ7) − sin(θ7) 0 sin(θ7) cos(θ7) 0

1 0 0

0 1 0

0 0 1

Similarly the s ivector is given by

s1=

00

0

00 0

00

d3

00 0

00

d5

00 0

00

d7

Substituting the above U i , V i , and s iinto Equation (8.41) and Equation (8.42) we get the following,

where C i = cos(i) and S i = sin(i):

R0=

r11 r12 r13

r21 r22 r23

r31 r32 r33

r11= ((((C1C2C3+ S1S3)C4− C1S2S4)C5+ (C1C2S3− S1C3)S5)C6+ ((C1C2C3+ S1S3)S4

+ C1S2C4)S6)C7+ (−((C1C2C3+ S1S3)C4− C1S2S4)S5+ (C1C2S3− S1C3)C5)S7

r12= −((((C1C2C3+ S1S3)C4− C1S2S4)C5+ (C1C2S3− S1C3)S5)C6+ ((C1C2C3+ S1S3)S4

+ C1S2C4)S6)S7+ (−((C1C2C3+ S1S3)C4− C1S2S4)S5+ (C1C2S3− S1C3)C5)C7

r13= −(((C1C2C3+ S1S3)C4− C1S2S4)C5+ (C1C2S3− S1C3)S5)S6+ ((C1C2C3+ S1S3)S4

+ C1S2C4)C6

r21= ((((S1C2C3− C1S3)C4− S1S2S4)C5+ (S1C2S3+ C1C3)S5)C6+ ((S1C2C3− C1S3)S4

+ S1S2C4)S6)C7+ (−((S1C2C3− C1S3)C4− S1S2S4)S5+ (S1C2S3+ C1C3)C5)S7

Trang 10

8-18 Robotics and Automation Handbook

r22= −((((S1C2C3− C1S3)C4− S1S2S4)C5+ (S1C2S3+ C1C3)S5)C6+ ((S1C2C3− C1S3)S4

+ S1S2C4)S6)S7+ (−((S1C2C3− C1S3)C4− S1S2S4)S5+ (S1C2S3+ C1C3)C5)C7

r23= −(((S1C2C3− C1S3)C4− S1S2S4)C5+ (S1C2S3+ C1C3)S5)S6+ ((S1C2C3− C1S3)S4

+ S1S2C4)C6

r31= (((−S2C3C4− C2S4)C5− S2S3S5)C6+ (−S2C3S4+ C2C4)S6)C7+ (−(−S2C3C4− C2S4)S5

− S2S3C5)S7

r32= −(((−S2C3C4− C2S4)C5− S2S3S5)C6+ (−S2C3S4+ C2C4)S6)S7+ (−(−S2C3C4− C2S4)S5

− S2S3C5)C7

r33= −((−S2C3C4− C2S4)C5− S2S3S5)S6+ (−S2C3S4+ C2C4)C6

d0=

d11

d21

d31

d11= −C1S2d3+ ((C1C2C3+ S1S3)S4+ C1S2C4)d5+ (−(((C1C2C3+ S1S3)C4− C1S2S4)C5

+ (C1C2S3− S1C3)S5)S6+ ((C1C2C3+ S1S3)S4+ C1S2C4)C6)d7

d21= −S1S2d3+ ((S1C2C3− C1S3)S4+ S1S2C4)d5+ (−(((S1C2C3− C1S3)C4− S1S2S4)C5

+ (S1C2S3+ C1C3)S5)S6+ ((S1C2C3− C1S3)S4+ S1S2C4)C6)d7

d31= −C2d3+ (−S2C3S4+ C2C4)d5+ (−((−S2C3C4− C2S4)C5− S2S3S5)S6

+ (−S2C3S4+ C2C4)C6)d7 The transformation matrix is now given by

A07=



R0 d0



(8.45)

Example 8.5: The PUMA 600 Robot Arm

The PUMA 600 has six revolute joints giving it six degrees of freedom The motion of the arm is controlled

by six brushed DC servo motors (seeFigure 8.10and Table 8.4) The first step in determining the D-H parameters is to locate the joints of the robot arm manipulator and determine if the joint is prismatic

or revolute There are six joints in the PUMA 600 All of them are revolute joints soθ i of each joint is variable Starting from the base, the joint coordinate frames are assigned based on the algorithm outlined before

Having established the coordinate frames, the next step is to determine the D-H parameters We begin by first determiningα i.α i is the rotation about X i to make Z i−1parallel with Z i The rotation

No Twist Angleα i Link Length a i Link Offset d i Joint Angleθ i

1

2

3

4

5

6

Trang 11

expression in Equation (8.24) and Equation (8.25) we get

R60= (U1V1)(U2V2)(U3V3)(U4V4)(U5V5)(U6V6) (8.46)

d60= U1s1+ (U1V1)U2s2+ (U1V1)(U2V2)U3s3+ (U1V1)(U2V2)(U3V3)U4s4

+ (U1V1)(U2V2)(U3V3)(U4V4)U5s5+ (U1V1)(U2V2)(U3V3)(U4V4)(U5V5)U6s6 (8.47)

The following matrices are the individual U and V matrices for each axis of the manipulator.

U1=

cos(θ1) − sin(θ1) 0 sin(θ1) cos(θ1) 0

U2=

cos(θ2) − sin(θ2) 0 sin(θ2) cos(θ2) 0

1 0 0

0 1 0

0 0 1

U3=

cos(θ3) − sin(θ3) 0 sin(θ3) cos(θ3) 0

U4=

cos(θ4) − sin(θ4) 0 sin(θ4) cos(θ4) 0

U5=

cos(θ5) − sin(θ5) 0 sin(θ5) cos(θ5) 0

U6=

cos(θ6) − sin(θ6) 0 sin(θ6) cos(θ6) 0

1 0 0

0 1 0

0 0 1

Similarly the s ivector is given by

s1=

0 0 0

a2 0

d2

0 0 0

0 0

d4

0 0 0

0 0

d6

Substituting the above U i , V i , and s iinto Equation (8.46) and Equation (8.47), we get the following where

C a = cos(a) and S a = sin(a).

R0=

r11 r12 r13

r21 r22 r23

r31 r32 r33

Trang 12

D-H Convention 8-21

r11= (((C1C2C3− C1S2S3)C4− S1S4)C5+ (−C1C2S3− C1S2C3)S5)C6+ ((C1C2C3− C1S2S3)S4

+ S1C4)S6

r12= −(((C1C2C3− C1S2S3)C4− S1S4)C5+ (−C1C2S3− C1S2C3)S5)S6+ ((C1C2C3− C1S2S3)S4

+ S1C4)C6

r13= ((C1C2C3− C1S2S3)C4− S1S4)S5− (−C1C2S3− C1S2C3)C5

r21= (((S1C2C3− S1S2S3)C4+ C1S4)C5+ (−S1C2S3− S1S2C3)S5)C6+ ((S1C2C3− S1S2S3)S4

− C1C4)S6

r22= −(((S1C2C3− S1S2S3)C4+ C1S4)C5+ (−S1C2S3− S1S2C3)S5)S6+ ((S1C2C3− S1S2S3)S4

− C1C4)C6

r23= ((S1C2C3− S1S2S3)C4+ C1S4)S5− (−S1C2S3− S1S2C3)C5

r31= ((S2C3+ C2S3)C4C5+ (−S2S3+ C2C3)S5)C6+ (S2C3+ C2S3)S4S6

r32= −((S2C3+ C2S3)C4C5+ (−S2S3+ C2C3)S5)S6+ (S2C3+ C2S3)S4C6

r33= (S2C3+ C2S3)C4S5− (−S2S3+ C2C3)C5

d0=

d11

d21

d31

d11= C1C2a2+ S1d2+ (−C1C2S3− C1S2C3)d4+ (((C1C2C3− C1S2S3)C4− S1S4)S5

− (−C1C2S3− C1S2C3)C5)d6

d21= S1C2a2− C1d2+ (−S1C2S3− S1S2C3)d4+ (((S1C2C3− S1S2S3)C4+ C1S4)S5

− (−S1C2S3− S1S2C3)C5)d6

d31= S2a2+ (−S2S3+ C2C3)d4+ ((S2C3+ C2S3)C4S5− (−S2S3+ C2C3)C5)d6

The final transformation matrix is

A0=



R0 d0



(8.50)

Ngày đăng: 10/08/2014, 02:20

🧩 Sản phẩm bạn có thể quan tâm