Sie sind auf Seite 1von 36

Introduction Robotics, lecture 3 of 9

May-June 2008

dr Dragan Kosti
WTB Dynamics and Control

Introduction Robotics

1/36

2/36

Outline
Recapitulation
Forward kinematics of RRR robot
Inverse kinematics problem

Introduction Robotics, lecture 3 of 9

Introduction Robotics, lecture 3 of 9

Recapitulation

3/36

Introduction Robotics, lecture 3 of 9

prismatic (translational, d).

rotary (revolute, )

Types of joints:

Kinematic chain is series


of links and joints.

SCARA
geometry

schematic representations of robot joints

Robot manipulators

4/36

Introduction Robotics, lecture 3 of 9

Common geometries of robot manipulators

5/36

Introduction Robotics, lecture 3 of 9

Determine position and orientation of the end-effector as


function of displacements in robot joints.

Forward kinematics problem

6/36

Introduction Robotics, lecture 3 of 9

In DH convention, each homogeneous transformation has the form:

DH convention reduces 6 to 4, by specific choice of


the coordinate frames.

An arbitrary homogeneous transformation is based on 6


independent variables: 3 for rotation + 3 for translation.

DH convention for homogenous transformations (1/2)

7/36

Introduction Robotics, lecture 3 of 9

where

di

zi-1
qi
xi-1

Position and orientation of coordinate frame i with respect to


frame i-1 is specified by homogenous transformation matrix:
xn
q0
z0
qi+1
zn
qi
0
n yn
y0
i
zi
a
i
x0
x

DH convention for homogenous transformations (2/2)

8/36

z0

q0

Introduction Robotics, lecture 3 of 9

Joint angle i is angle from xi-1 to xi


measured in plane normal to zi-1
(right-hand rule).

Link offset di is distance from origin


of frame i-1 to the intersection xi
with zi-1, measured along zi-1.

Link twist i is angle between zi-1


and zi measured in plane normal 0
y0
x0
to xi (right-hand rule).

Link length ai is distance from zi-1 to


zi measured along xi.

di

qi

zi-1
qi
xi-1

ai

zi
xi

qi+1

Physical meaning of DH parameters

n yn

xn

9/36

zn

Introduction Robotics, lecture 3 of 9

c) zi1 intersects zi; axis xi is chosen normal to the plane formed by zi and zi1;
its positive direction is arbitrary; the most natural choice of oi is the
intersection of zi and zi1, however, any point along the zi suffices;
choose yi to form a right-handed frame.

b) zi1 is parallel to zi; there are infinitely many common normals; choose xi as
the normal passes through oi1; choose oi as the point at which this normal
intersects zi; choose yi to form a right-handed frame,

a) zi1 and zi are not coplanar; there is an unique shortest line segment from zi1 to
zi, perpendicular to both; this line segment defines xi and the point where the
line intersects zi is the origin oi; choose yi to form a right-handed frame,

3. Iterative procedure for choosing oixiyizi depending on oi-1xi-1yi-1zi-1 (i=1, 2, , n-1):

2. Choose x0 and y0 so that the base frame is right-handed.

coincides with zn-1).

1. Assign zi to be the axis of actuation for joint i+1 (unless otherwise stated zn

DH convention to assign coordinate frames

10/36

Introduction Robotics, lecture 3 of 9

d1

x1

x0

q1

y0

shoulder

waist

z0

y1

d2

z1

q2

y2

a2

z2

-q3

y3

a3

x3
z3

di - link offsets
qi - displacements

1 - twist angle
ai - link lenghts

elbow

x2

d3

Case-study: RRR robot manipulator

11/36

Introduction Robotics, lecture 3 of 9

DH parameters of RRR robot manipulator

12/36

x03(q) = [ x

013 = [0 0 0]

q = [ q1 q2 q3 ]T

Introduction Robotics, lecture 3 of 9

where

R 03 (q) x 03(q)
=

1
013

T03 (q) = A1(q)A 2 (q)A 3 (q) =

z ]T

Coordinate frame o3x3y3z3 is related with the base frame o0x0y0z0 via
homogenous transformation matrix:

Forward kinematics of RRR robot manipulator (1/2)

13/36

Introduction Robotics, lecture 3 of 9

Orientation of end-effector:
cosq1cos( q2 + q3 ) cosq1sin( q2 + q3 ) sinq1
R30 = sinq1cos( q2 + q3 ) sinq1sin( q2 + q3 ) cosq1

cos( q2 + q3 )
0
sin( q2 + q3 )

z = a3sin( q2 + q3 ) + a2sinq2 + d1

y = sinq1[a3cos( q2 + q3 ) + a2cosq2 ] ( d 2 + d3 )cosq1

Position of end-effector:
x = cosq1[a3cos( q2 + q3 ) + a2cosq2 ] + ( d 2 + d3 )sinq1

Forward kinematics of RRR robot manipulator (2/2)

14/36

15/36

Inverse Kinematics

Introduction Robotics, lecture 3 of 9

16/36

Inverse kinematics problem


Inverse kinematics (IK): determine displacements in robot joints that
correspond to given position and orientation of the end-effector.

Introduction Robotics, lecture 3 of 9

17/36

Illustration: IK for planar RR manipulator (1/2)


Elbow down IK solution

Introduction Robotics, lecture 3 of 9

Introduction Robotics, lecture 3 of 9

Elbow up IK solution

Illustration: IK for planar RR manipulator (2/2)

18/36

Introduction Robotics, lecture 3 of 9

Here, H represents the desired position and orientation of the tip


coordinate frame onxnynzn relative to coordinate frame o0x0y0z0
of the base; T0n is product of homogenous transformation
matrices relating successive coordinate frames:

find (multiple) solution(s) q1,,qn to equation

Given a homogenous transformation matrix HSE(3)

The general IK problem (1/2)

19/36

Introduction Robotics, lecture 3 of 9

Here, Tij and Hij are nontrivial elements of T0n and H.

gives rise to 4 trivial equations and 12 equations in n unknowns


q1,,qn:

Since the bottom rows of both T0n and H are equal to [0 0 0 1],
equation

The general IK problem (2/2)

20/36

21/36

Illustration: Stanford manipulator

Introduction Robotics, lecture 3 of 9

22/36

FK of Stanford manipulator

Introduction Robotics, lecture 3 of 9

23/36

Example of IK solution for Stanford manipulator


Rotational equations (correspond to R06):

One solution:

Positional equations (correspond to o06):

Introduction Robotics, lecture 3 of 9

Introduction Robotics, lecture 3 of 9

Existence of IK solutions depends on mathematical as well as


engineering considerations.
We assume that the given position and orientation is such that at
least one IK solution exists.

faster computation (e.g. at sampling time of 1 [ms]),


if multiple IK solutions exist, then closed-form allows us to develop
rules for choosing a particular solution among several.

It is preferable to find IK solutions in closed-form:

FK problem has always unique solution whereas IK problem may


or may not have a solution; if IK solution exists, it may or may not
be unique; solving IK equations, in general, is much too difficult.

Nature of IK solutions

24/36

Introduction Robotics, lecture 3 of 9

IK problem: for given R and o solve 9 rotational and 3 positional


equations:

General IK problem is difficult BUT for manipulators having 6 joints


with the last 3 joint axes intersecting at one point, it is possible to
decouple the general IK problem into two simpler problems:
inverse position kinematics and inverse orientation kinematics.

Kinematic decoupling (1/3)

25/36

Introduction Robotics, lecture 3 of 9

Let oc be the intersection of the last 3 joint axes; as z3, z4, and z5
intersect at oc, the origins o4 and o5 will always be at oc;
the motion of joints 4, 5 and 6 will not change the position of oc;
only motions of joints 1, 2 and 3 can influence position of oc.

Spherical wrist as paradigm.

Kinematic decoupling (2/3)

26/36

Introduction Robotics, lecture 3 of 9

q4, q5, q6

q1, q2, q3

Kinematic decoupling (3/3)

27/36

Inverse tangent function Atan2(xc,yc) is defined for all (xc,yc)(0,0)


and equals the unique angle 1 such that:
xc
yc
cos 1 =
, sin 1 =
.
2
2
2
2
xc + yc
xc + yc
Introduction Robotics, lecture 3 of 9

Articulated manipulator: inverse position problem

28/36

Introduction Robotics, lecture 3 of 9

Articulated manipulator: left arm configuration

29/36

Introduction Robotics, lecture 3 of 9

Articulated manipulator: right arm configuration

30/36

Introduction Robotics, lecture 3 of 9

Law of cosines:

+ elbow down; - elbow up

Articulated manipulator: IK solution for 3

31/36

Introduction Robotics, lecture 3 of 9

2=Atan2(a2+a3cos3,a3sin3)

1=Atan2(r,s)

2=1- 2

Articulated manipulator: IK solution for 2

32/36

Introduction Robotics, lecture 3 of 9

PUMA robot as
an example of
the articulated
geometry.

Four IK solutions 1-3 for articulated manipulator

33/36

34/36

Articulated manipulator: inverse orientation problem

Introduction Robotics, lecture 3 of 9

Equation to solve:

Introduction Robotics, lecture 3 of 9

If positive square root is chosen in solution for 5:

If not both right-hand sides of the first two equations are zero:

Equations given by the third column in

Articulated manipulator: IK solutions for 4 and 5

35/36

Introduction Robotics, lecture 3 of 9

Analogous approach if negative square root is chosen in


solution for 5.

From these equations it follows:

s5s6 = s1r12 - c1r22

-s5c6 = s1r11 - c1r21

The first two equations given by the last row in

Articulated manipulator: IK solutions for 6


:

36/36

Das könnte Ihnen auch gefallen