Introduction to Robotics 5/7/20151. General Course Information 5/7/20152 The course introduces the basic concepts of robotic manipulators and autonomous.

Post on 16-Dec-2015

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Introduction to Robotics

04/18/231

General Course Information

04/18/232

The course introduces the basic concepts of robotic manipulators and autonomous systems. After a review of some fundamental mathematics the course examines the mechanics and dynamics of robot arms, mobile robots, their sensors and algorithms for controlling them.

two robotic arms everything in Matlab (and some Java)

A150 Robotic Arm

04/18/233 Symbolic Representation of Manipulators

link 3link 2

Kinematics

04/18/234

the study of motion that ignores the forces that cause the motion “geometry of motion”

interested in position, velocity, acceleration, etc. of the various links of the manipulator e.g., where is the gripper relative to the base of the

manipulator? what direction is it pointing in? described using rigid transformations of the links

Kinematics

04/18/235

forward kinematics: given the link lengths and joint angles compute the

position and orientation of the gripper relative to the base for a serial manipulator there is only one solution

inverse kinematics: given the position (and possibly the orientation) of the

gripper and the dimensions of the links, what are the joint variables? for a serial manipulator there is often more than one

mathematical solution

Wheeled Mobile Robots

04/18/236

robot can have one or more wheels that can provide steering (directional control) power (exert a force against the ground)

an ideal wheel is perfectly round (perimeter 2πr) moves in the direction perpendicular to its axis

Wheel

04/18/237

Deviations from Ideal

04/18/238

two independently driven wheels mounted on a common axis

Differential Drive

04/18/239

for a robot starting with pose [0 0 0]T moving with velocity V(t) in a direction θ(t) :

Forward Kinematics

04/18/2310

t

t

t

dttt

dtttVty

dtttVtx

0

0

0

)()(

))(sin()()(

))(cos()()(

Sensitivity to Wheel Velocity

04/18/2311

2.0

100

0)0(

),0(1)(

),0(1)(2

2

t

tv

tvr

N

N

σ = 0.05

σ = 0.01

Localization using Landmarks: RoboSoccer

04/18/2312

Maps

04/18/2313

*

*start

goal

Path Finding

04/18/2314

start

goal

Localization

04/18/2315

start

goal

EKF SLAM Application

16

[MIT B21, courtesy by John Leonard]www.probabilistic-robotics.org

EKF SLAM Application

17

raw odometry estimated trajectory

[courtesy by John Leonard]

www.probabilistic-robotics.org

Day 02

Introduction to manipulator kinematics

04/18/2318

Robotic Manipulators

04/18/2319

a robotic manipulator is a kinematic chain i.e. an assembly of pairs of rigid bodies that can move

respect to one another via a mechanical constraint the rigid bodies are called links the mechanical constraints are called joints

Symbolic Representation of Manipulators

A150 Robotic Arm

04/18/2320 Symbolic Representation of Manipulators

link 3link 2

Joints

04/18/2321 Symbolic Representation of Manipulators

most manipulator joints are one of two types1.revolute (or rotary)

like a hinge allows relative rotation about a fixed axis between

two links axis of rotation is the z axis by convention

2.prismatic (or linear) like a piston allows relative translation along a fixed axis between

two links axis of translation is the z axis by convention

3.our convention: joint i connects link i – 1 to link i 1. when joint i is actuated, link i moves

Joint Variables

04/18/2322 Symbolic Representation of Manipulators

revolute and prismatic joints are one degree of freedom (DOF) joints; thus, they can be described using a single numeric value called a joint variable

qi : joint variable for joint i

1. revolute qi = i : angle of rotation of link i relative to link i – 1

2. prismatic qi = di : displacement of link i relative to link i – 1

Revolute Joint Variable

04/18/2323 Symbolic Representation of Manipulators

revolute qi = i : angle of rotation of link i relative to link i – 1

link i – 1

link i

i

Prismatic Joint Variable

04/18/2324 Symbolic Representation of Manipulators

prismatic qi = di : displacement of link i relative to link i – 1

link i – 1 link i

di

Common Manipulator Arrangments

04/18/2325

most industrial manipulators have six or fewer joints the first three joints are the arm the remaining joints are the wrist

it is common to describe such manipulators using the joints of the arm R: revolute joint P: prismatic joint

Common Manipulator Arrangements

Articulated Manipulator

04/18/2326

RRR (first three joints are all revolute) joint axes

z0 : waist z1 : shoulder (perpendicular to z0) z2 : elbow (parallel to z1)

Common Manipulator Arrangements

z0z1 z2

waist

shoulder

elbow

forearm

1

2 3

Spherical Manipulator

04/18/2327

RRP Stanford arm

http://infolab.stanford.edu/pub/voy/museum/pictures/display/robots/IMG_2404ArmFrontPeekingOut.JPG

Common Manipulator Arrangements

z0z1

z2

waist

shoulder

1

2

d3

SCARA Manipulator

04/18/2328

RRP Selective Compliant Articulated Robot for

Assembly http://www.robots.epson.com/products/g-series.htm

Common Manipulator Arrangements

z0

z1 z2

1

2

d3

Forward Kinematics

04/18/2329

given the joint variables and dimensions of the links what is the position and orientation of the end effector?

Forward Kinematics

2

1

a1

a2

Forward Kinematics

04/18/2330

choose the base coordinate frame of the robot we want (x, y) to be expressed in this frame

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

Forward Kinematics

04/18/2331

notice that link 1 moves in a circle centered on the base frame origin

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

Forward Kinematics

04/18/2332

choose a coordinate frame with origin located on joint 2 with the same orientation as the base frame

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

Forward Kinematics

04/18/2333

notice that link 2 moves in a circle centered on frame 1

Forward Kinematics

2

1

a1

a2

(x, y) ?

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

( a2 cos (1 + 2), a2 sin (1 + 2) )

Forward Kinematics

04/18/2334

because the base frame and frame 1 have the same orientation, we can sum the coordinates to find the position of the end effector in the base frame

Forward Kinematics

2

1

a1

a2

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

( a2 cos (1 + 2), a2 sin (1 + 2) )

(a1 cos 1 + a2 cos (1 + 2), a1 sin 1 + a2 sin (1 + 2) )

Forward Kinematics

04/18/2335

we also want the orientation of frame 2 with respect to the base frame x2 and y2 expressed in terms

of x0 and y0

Forward Kinematics

2

1

a1

a2

x0

y0

1

x2y2

Forward Kinematics

04/18/2336

without proof I claim:

Forward Kinematics

2

1

a1

a2

x0

y0

1

x2 = (cos (1 + 2), sin (1 + 2) )

y2 = (-sin (1 + 2), cos (1 + 2) )

x2y2

Inverse Kinematics

04/18/2337

given the position (and possiblythe orientation) of the endeffector, and the dimensionsof the links, what are the jointvariables?

Inverse Kinematics

2 ?

1 ?

a1

a2

x0

y0

x2y2

(x, y)

Inverse Kinematics

04/18/2338

harder than forward kinematics because there is often more than one possible solution

Inverse Kinematics

a1

a2

x0

y0

(x, y)

Inverse Kinematics

04/18/2339

law of cosines

Inverse Kinematics

2 ?

a1

a2

x0

y0

(x, y)

22221

22

21

2 )cos(2 yxaaaab

b

Inverse Kinematics

04/18/2340 Inverse Kinematics

21

22

21

22

2 2)cos(

aa

aayx

)cos()cos( 22

and we have the trigonometric identity

221

22

21

22

2 2cos C

aa

aayx

therefore,

We could take the inverse cosine, but this gives only one of the two solutions.

Inverse Kinematics

04/18/2341 Inverse Kinematics

1cossin 222

to obtain

Instead, use the two trigonometric identities:

cos

sintan

2

221

2

1tan

C

C

which yields both solutions for 2 . In many programming languages you would use thefour quadrant inverse tangent function atan2

c2 = (x*x + y*y – a1*a1 – a2*a2) / (2*a1*a2);s2 = sqrt(1 – c2*c2);theta21 = atan2(s2, c2);theta22 = atan2(-s2, c2);

Inverse Kinematics

04/18/2342

Exercise for the student: show that

Inverse Kinematics

221

22111 cos

sintantan

aa

a

x

y

Day 03

Spatial Descriptions

04/18/2343

Points and Vectors

04/18/2344

point : a location in space vector : magnitude (length) and direction

between two points

p

qv

Coordinate Frames

04/18/2345

choosing a frame (a point and two perpendicular vectors of unit length) allows us to assign coordinates

0p

0q

1

2000 qpv0x

0y

0o 0

5.1

20q

5.2

40p

Coordinate Frames

04/18/2346

the coordinates change depending on the choice of frame

1p

1q

2

1111 qpv

1x

1y1o 1

2

5.01q

4

5.01p

Dot Product

04/18/2347

the dot product of two vectors

nu

u

u

u2

1

nv

v

v

v2

1

vuvuvuvuvu Tnn 2211

u

v

cosu

cosvuvu

Translation

04/18/2348

suppose we are given o1 expressed in {0}

1x

1y

1o

10x

0y

0o

0

0

301o

Translation 1

04/18/2349

the location of {1} expressed in {0}

1x

1y

1o

10x

0y

0o

0

0

3

0

0

0

300

01

01 ood

Translation 1

04/18/2350

1. the translation vector can be interpreted as the location of frame {j} expressed in frame {i}

ijd

Translation 2

04/18/2351

p1 expressed in {0}

1x

1y

1o

10x

0y

0o

0

1

4

1

1

0

3101

0 pdp

1

11p

a point expressedin frame {1}

Translation 2

04/18/2352

2. the translation vector can be interpreted as a coordinate transformation of a point from frame {j} to frame {i}

ijd

Translation 3

04/18/2353

q0 expressed in {0}

0x

0y

0o

0

1

2

1

1

0

300 pdq

1

10p

1

20q

Translation 3

04/18/2354

3. the translation vector can be interpreted as an operator that takes a point and moves it to a new point in the same frame

d

Rotation

04/18/2355

suppose that frame {1} is rotated relative to frame {0}

1x

1y

0x

0y

10 oo

sin

cos

Rotation 1

04/18/2356

the orientation of frame {1} expressed in {0}

1x

1y

0x

0y

10 oo

0101

010101 yyyx

xyxxR

Rotation 1

04/18/2357

1. the rotation matrix can be interpreted as the orientation of frame {j} expressed in frame {i}

ijR

Rotation 2

04/18/2358

p1 expressed in {0}

1x

1y

0x

0y

10 oo

1

1

cossin

sincos101

0

pRp

1

11p

Rotation 2

04/18/2359

2. the rotation matrix can be interpreted as a coordinate transformation of a point from frame {j} to frame {i}

ijR

Rotation 3

04/18/2360

q0 expressed in {0}

0x

0y

0o

1

1

cossin

sincos00

pRq

0q

0p

Rotation 3

04/18/2361

3. the rotation matrix can be interpreted as an operator that takes a point and moves it to a new point in the same frame

R

Properties of Rotation Matrices

04/18/2362

RT = R-1 the columns of R are mutually orthogonal each column of R is a unit vector det R = 1 (the determinant is equal to 1)

Rotation and Translation

04/18/2363

1x1y

1o

10x

0y

0o

0

Rotations in 3D

04/18/2364

010101

010101

01010101

zzzyzx

yzyyyx

xzxyxx

R

Day 04

Rotations

04/18/2365

Properties of Rotation Matrices

04/18/2366

RT = R-1 the columns of R are mutually orthogonal each column of R is a unit vector det R = 1 (the determinant is equal to 1)

Rotations in 3D

04/18/2367

010101

010101

01010101

zzzyzx

yzyyyx

xzxyxx

R0x

0y10 oo

0z

1x

1y1z

Rotation About z-axis

04/18/2368

0x

0y

10 ˆˆ zz

1x

1y

+'ve rotation

Rotation About x-axis

04/18/2369

0x

0y

0z

1x

1y

+'ve rotation

1z

Rotation About y-axis

04/18/2370

0x

10 ˆˆ yy

0z

1x

+'ve rotation

1z

Relative Orientation Example

04/18/2371

0x

10 ˆˆ zy

0z

1x

1y

45

Successive Rotations in Moving Frames

04/18/2372

1. Suppose you perform a rotation in frame {0} to obtain {1}.

2. Then you perform a rotation in frame {1} to obtain {2}.

What is the orientation of {2} relative to {0}?

?02 R

0x

1z

1x10 ˆˆ yy

0z

2x

21 ˆˆ zz

1x

1y

2y

2x

2y

0z

0x

0y

2z

,12 zRR ,

01 yRR

Successive Rotations in a Fixed Frame

04/18/2373

1. Suppose you perform a rotation in frame {0} to obtain {1}.

2. Then you rotate {1} in frame {0} to obtain {2}.

What is the orientation of {2} relative to {0}?

?02 R

0x

1z

1x10 ˆˆ yy

0z

1x

1z

0y

1y

2x

2y

0z

0x

0y

2z

,zRR ,01 yRR

0z

0x

Composition of Rotations

04/18/2374

1. Given a fixed frame {0} and a current frame {1} and

if {2} is obtained by a rotation R in the current frame {1} then use postmulitplication to obtain:

2. Given a fixed frame {0} and a frame {1} and if {2} is obtained by a rotation R in the fixed frame

{0} then use premultiplication to obtain:

01R

01

02 RRR

12

01

02

12 and RRRRR

Rotation About a Unit Axis

04/18/2375

cvkskvkkskvkk

skvkkcvkskvkk

skvkkskvkkcvk

R

zxzyyzx

xzyyzyx

yzxzyxx

k2

2

2

,

0x

0y

0z

xk

yk

zkk

cos1

sin

cos

v

s

c

Day 05

Rigid Body Transformations

04/18/2376

Homogeneous Representation

04/18/2377

translation represented by a vector d vector addition

rotation represented by a matrix R matrix-matrix and matrix-vector multiplication

convenient to have a uniform representation of translation and rotation obviously vector addition will not work for rotation can we use matrix multiplication to represent

translation?

Homogeneous Representation

04/18/2378

consider moving a point p by a translation vector d

zz

yy

xx

z

y

x

z

y

x

dp

dp

dp

d

d

d

p

p

p

dp

zz

yy

xx

z

y

x

dp

dp

dp

p

p

p

?

not possible as matrix-vector multiplication always leaves the origin unchanged

Homogeneous Representation

04/18/2379

consider an augmented vector ph and an augmented matrix D

1000

100

010

001

z

y

x

d

d

d

D

1z

y

x

h p

p

p

p

111000

100

010

001

zz

yy

xx

z

y

x

z

y

x

h dp

dp

dp

p

p

p

d

d

d

Dp

Homogeneous Representation

04/18/2380

the augmented form of a rotation matrix R3x3

10000

0

0

3x3RR

1110000

0

0

3x33x3 pRp

p

p

RRp

z

y

x

h

Rigid Body Transformations in 3D

04/18/2381

p

01d

12d{0}

{1}

{2}

Rigid Body Transformations in 3D

04/18/2382

suppose {1} is a rotated and translated relative to {0}

what is the pose (the orientation and position) of {1} expressed in {0} ?

d

{0}

{1}

?01T

Rigid Body Transformations in 3D

04/18/2383

suppose we use the moving frame interpretation (postmultiply transformation matrices)1. translate in {0} to get {0’} 2. and then rotate in {0’} to get {1}

d

{0}

{1}

0'0D

d

{0}

{0’}

{0’}

Step 1

Step 2

'01

0'0 RD

Rigid Body Transformations in 3D

04/18/2384

suppose we use the fixed frame interpretation (premultiply transformation matrices)1. rotate in {0} to get {0’} 2. and then translate in {0} in to get {1}

d

{0}

R

{0}

{0’}

{0’}

{1}

Step 1

Step 2

RD

Rigid Body Transformations in 3D

04/18/2385

both interpretations yield the same transformation

1000

10000

0

0

1000100

010

001

3x3

3x3

01

dR

Rd

RDT

Homogeneous Representation

04/18/2386

every rigid-body transformation can be represented as a rotation followed by a translation in the same frame as a 4x4 matrix

where R is a 3x3 rotation matrix and d is a 3x1 translation vector

1000

dRT

Homogeneous Representation

04/18/2387

in some frame i points

vectors

1

ii p

P

0

ii v

V

Inverse Transformation

04/18/2388

the inverse of a transformation undoes the original transformation if

then

1000

dRT

10001 dRR

TTT

Day 06

Forward Kinematics

04/18/2389

Transform Equations

04/18/2390

{0}

{1}{2}

{3}

{4}

01T

12T

03T

34T

42T

Transform Equations

04/18/2391

give expressions for:02T

34T

Transform Equations

04/18/2392

{0}

{1}

01T

02T

{2}

{3}

23T

Transform Equations

04/18/2393

how can you find

01T

23T

02T

13T

Links and Joints

04/18/2394

n joints, n + 1 links link 0 is fixed (the base) joint i connects link i – 1 to link i

link i moves when joint i is actuated

joint 1

joint 2

joint 3 joint 4 joint n-1 joint n

link 0

link 1

link

2

link 3

link n-1

link n

.................

prismatic

revolute

i

ii d

q

Forward Kinematics

04/18/2395

given the joint variables and dimensions of the links what is the position and orientation of the end effector?

Forward Kinematics

2

1

a1

a2

x0

y0

p0 ?

Forward Kinematics

04/18/2396

because the base frame and frame 1 have the same orientation, we can sum the coordinates to find the position of the end effector in the base frame

Forward Kinematics

2

1

a1

a2

x0

y0

( a1 cos 1 , a1 sin 1 )

1

x1

y1

( a2 cos (1 + 2), a2 sin (1 + 2) )

(a1 cos 1 + a2 cos (1 + 2), a1 sin 1 + a2 sin (1 + 2) )

Forward Kinematics

04/18/2397

from Day 02

Forward Kinematics

2

1

a1

a2

x0

y0

1

x2 = (cos (1 + 2), sin (1 + 2) )

y2 = (-sin (1 + 2), cos (1 + 2) )

x2y2

p0 = (a1 cos 1 + a2 cos (1 + 2), a1 sin 1 + a2 sin (1 + 2) )

Frames

04/18/2398 Forward Kinematics

2

1

a1

a2

x0

y0 x1

y1

x2y2

Forward Kinematics

04/18/2399

using transformation matrices

11 ,,01 axz DRT

22 ,,12 axz DRT

12

01

02 TTT

Day 07

Denavit-Hartenberg

04/18/23100

Links and Joints

04/18/23101

n joints, n + 1 links link 0 is fixed (the base) joint i connects link i – 1 to link i

link i moves when joint i is actuated

joint 1

joint 2

joint 3 joint 4 joint n-1 joint n

link 0

link 1

link

2

link 3

link n-1

link n

.................

prismatic

revolute

i

ii d

q

Forward Kinematics

04/18/23102

attach a frame {i} to link i all points on link i are constant when expressed in {i} if joint i is actuated then frame {i} moves relative to

frame {i - 1} motion is described by the rigid transformation

the state of joint i is a function of its joint variable qi (i.e., is a function of qi)

this makes it easy to find the last frame with respect to the base frame

1iiT

)(11i

ii

ii qTT

123

12

01

0 nnn TTTTT

Forward Kinematics

04/18/23103

more generally

the forward kinematics problem has been reduced to matrix multiplication

ji

ji

ji

T

I

TTT

Tij

jj

ij

ii

ij

if

if

if

1

1121

Forward Kinematics

04/18/23104

Denavit J and Hartenberg RS, “A kinematic notation for lower-pair mechanisms based on matrices.” Trans ASME J. Appl. Mech, 23:215–221, 1955 described a convention for standardizing the

attachment of frames on links of a serial linkage common convention for attaching reference

frames on links of a serial manipulator and computing the transformations between frames

Denavit-Hartenberg

04/18/23105

Denavit-Hartenberg

04/18/23106

notice the form of the rotation component

this does not look like it can represent arbitrary rotations

can the DH convention actually describe every physically possible link configuration?

ii

iiiii

iiiii

cs

scccs

sscsc

0

Denavit-Hartenberg

04/18/23107

yes, but we must choose the orientation and position of the frames in a certain way

(DH1)

(DH2)

claim: if DH1 and DH2 are true then there exists unique numbers

01 ˆˆ zx

01 ˆ intersects ˆ zx

,,,,0

1 such that ,,, xaxdzz RDDRTda

Denavit-Hartenberg

04/18/23108

iiii xaxdzzii RTTRT ,,,,

1

1000

0 i

i

i

dcs

sascccs

casscsc

ii

iiiiii

iiiiii

anglejoint

offsetlink

link twist

lengthlink

i

i

i

i

d

a

Denavit-Hartenberg

04/18/23109

proof: on blackboard in class

Day 08

Denavit-Hartenberg

04/18/23110

Denavit-Hartenberg Forward Kinematics

04/18/23111

RPP cylindrical manipulator http://strobotics.com/cylindrical-format-robot.htm

Denavit-Hartenberg Forward Kinematics

04/18/23112

How do we place the frames?

Step 1: Choose the z-axis for each frame

04/18/23113

recall the DH transformation matrix

iiii xaxdzzii RTTRT ,,,,

1

1000

0 i

i

i

dcs

sascccs

casscsc

ii

iiiiii

iiiiii

1ˆ iix 1ˆ i

iy 1ˆ iiz

Step 1: Choose the z-axis for each frame

04/18/23114

axis of actuation for joint i+1

iz

link i link i link i+1 link i+1

joint i+1 joint i+1

iz

iz

Step 1: Choose the z-axis for each frame

04/18/23115

Warning: the picture is deceiving. We do not yet know the origin of the frames; all we know at this point is that each zi points along a joint axis

Step 2: Establish frame {0}

04/18/23116

place the origin o0 anywhere on z0 often the choice of location is obvious

choose x0 and y0 so that {0} is right-handed often the choice of directions is obvious

Step 2: Establish frame {0}

04/18/23117

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23118

using frame {i-1} construct frame {i} DH1: xi is perpendicular to zi-1

DH2: xi intersects zi-1

3 cases to consider depending on the relationship between zi-1 and zi

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23119

Case 1 zi-1 and zi are not coplanar (skew)

i angle from zi-1 to zi measured about xi

iz

1ˆ iz

(out of page)shortest line betweenand1ˆ iz iz

ix

iopoint of intersection

ia

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23120

Case 2 zi-1 and zi are parallel ( i = 0 )

notice that this choice results in di = 0

iz1ˆ iz

ix

iopoint of intersection

1ioia

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23121

Case 3 zi-1 and zi intersect ( ai = 0 )

iz

1ˆ iz

ixiopoint of intersection

(out of page)

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23122

Step 3: Iteratively construct {1}, {2}, ... {n-1}

04/18/23123

Step 4: Place the end effector frame

04/18/23124

“approach”

“sliding”

“normal”

Step 4: Place the end effector frame

04/18/23125

Step 5: Find the DH parameters

04/18/23126

ai : distance between zi-1 and zi measured along xi

i : angle from zi-1 and zi measured about xi

di : distance between oi-1 to the intersection of xi and zi-1 measured along zi-1

i : angle from xi-1 and xi measured about zi-1

Step 5: Find the DH parameters

04/18/23127

Link ai i di i

1 0 0 d1 1*

2 0 -90 d2* 0

3 0 0 d3* 0* joint variable

Day 09

More Denavit-Hartenberg Examples

04/18/23128

Step 5: Find the DH parameters

04/18/23129

Link ai i di i

1 0 0 d1 1*

2 0 -90 d2* 0

3 0 0 d3* 0* joint variable

Step 6: Compute the transformation

04/18/23130

once the DH parameters are known, it is easy to construct the overall transformation

Link ai i di i

1 0 0 d1 1*

2 0 -90 d2* 0

3 0 0 d3* 0* joint variable

1000

100

00

00

1

11

11

,,,,01 1111 d

cs

sc

RTTRT xaxdzz

Step 6: Compute the transformation

04/18/23131

Link ai i di i

1 0 0 d1 1*

2 0 -90 d2* 0

3 0 0 d3* 0* joint variable

1000

010

0100

0001

2,,,,

12 2222 d

RTTRT xaxdzz

Step 6: Compute the transformation

04/18/23132

Link ai i di i

1 0 0 d1 1*

2 0 -90 d2* 0

3 0 0 d3* 0* joint variable

1000

100

0010

0001

3,,,,

23 3333 d

RTTRT xaxdzz

Step 6: Compute the transformation

04/18/23133

1000

010

0

0

21

3111

3111

23

12

01

03 dd

dccs

dssc

TTTT

Spherical Wrist

04/18/23134

Spherical Wrist

04/18/23135

Spherical Wrist: Step 1

04/18/23136

Spherical Wrist: Step 2

04/18/23137

Spherical Wrist: Step 2

04/18/23138

Spherical Wrist: Step 4

04/18/23139

Step 5: DH Parameters

04/18/23140

Link ai i di i

4 0 -90 0 4*

5 0 90 0 5*

6 0 0 d6 6** joint variable

Step 6: Compute the transformation

04/18/23141

10006556565

654546465464654

654546465464654

56

45

34

36 dccsscs

dssssccscsscccs

dscsccssccssccc

TTTT

RPP + Spherical Wrist

04/18/23142

RPP + Spherical Wrist

04/18/23143

1000333231

232221

131211

36

03

06

z

y

x

drrr

drrr

drrr

TTT

21654

651641654111

dddssd

csssscccccr

z

Stanford Manipulator + Spherical Wrist

04/18/23144

Link ai i di i

1 0 -90 0 1*

2 0 90 d2 2*

3 0 0 d3* 0

4 0 -90 0 4*

5 0 90 0 5*

6 0 0 d6 6** joint variable

SCARA + 1DOF Wrist

04/18/23145

Link ai i di i

1 a1 0 d1 1*

2 a2 180 0 2*

3 0 0 d3* 0

4 0 0 d4 4** joint variable

top related