1/47
Introduction Robotics
dr Dragan Kosti ć WTB Dynamics and Control September - October 2009
Introduction Robotics, lecture 2 of 7 2/47
New Plan for the Lecture Rooms
• Every Tuesday, 3 e+4 e hours
• Week 37+40+42+43 in AUD.10
• Week 38+39 in AUD.14
• Week 41 in AUD.15
Introduction Robotics, lecture 2 of 7 3/47
Outline • Recapitulation
• Parameterization of rotations
• Rigid motions
• Homogenous transformations
• Robotic manipulators
• Forward kinematics problem
Introduction Robotics, lecture 2 of 7 4/47
Recapitulation
Introduction Robotics, lecture 2 of 7 5/47
Representing rotations in 3D
Each axis of the frame o1x1y1z1 is projected onto o0x0y0z0:
0 R1 ∈ SO(3)
Introduction Robotics, lecture 2 of 7 6/47
Basic rotation matrices
Introduction Robotics, lecture 2 of 7 7/47
Introduction Robotics, lecture 2 of 7 8/47
Introduction Robotics, lecture 2 of 7 9/47
Parameterization of rotations
Rigid motions
Homogenous transformations
Introduction Robotics, lecture 2 of 7 10/47
Introduction Robotics, lecture 2 of 7 11/47
Introduction Robotics, lecture 2 of 7 12/47
Introduction Robotics, lecture 2 of 7 13/47
Introduction Robotics, lecture 2 of 7 14/47
Introduction Robotics, lecture 2 of 7 15/47
Introduction Robotics, lecture 2 of 7 16/47
Introduction Robotics, lecture 2 of 7 17/47
Introduction Robotics, lecture 2 of 7 18/47 Basic homogenous transformations
Introduction Robotics, lecture 2 of 7 19/47
Robotic Manipulators
Introduction Robotics, lecture 2 of 7 20/47 Robot manipulators
• Kinematic chain is series of links and joints. SCARA geometry
• Types of joints: – rotary (revolute, θ) – prismatic (translational, d).
Introduction Robotics, lecture 2 of 7 schematic representations of robot joints 21/47
Anthropomorphic geometry (RRR)
• Resembles geometry of human arm. • Features at least Upper arm 3 rotary joints.
• Also known as Staubli articulated (ex Unimation) kinematic PUMA robot scheme.
http://www.ifr.org/pictureGallery/robType.htm Introduction Robotics, lecture 2 of 7 22/47
Spherical geometry (RRP)
• Robot axes form a polar coordinate system.
Stanford Arm - 1969 Introduction Robotics, lecture 2 of 7 23/47 SCARA geometry (RRP) • Robot having 2 parallel rotary joints to provide compliance in x-y direction (suitable for assembly tasks); sufficiently rigid in z-direction. • SCARA stands for Selective Compliant Assembly Robot Arm or Selective Compliant Articulated Robot Arm .
Introduction Robotics, lecture 2 of 7 24/47
Cylindrical geometry (RPP)
• Robot axes form a cylindrical coordinate system.
Introduction Robotics, lecture 2 of 7 25/47
Cartesian geometry (PPP)
• Robot having 3 prismatic joints, whose axes are coincident with a Cartesian coordinate frame.
Introduction Robotics, lecture 2 of 7 26/47
Parallel geometry
• Robot whose arms have concurrent prismatic or revolute joints. • Some subset of robot links form a closed kinematic chain. • There are at least two open kinematic chains connecting the base to the end-effector.
Introduction Robotics, lecture 2 of 7 27/47
Workspace per robot geometry (1/2)
Introduction Robotics, lecture 2 of 7 28/47 Workspace per robot geometry (2/2)
Introduction Robotics, lecture 2 of 7 29/47
Forward Kinematics
Introduction Robotics, lecture 2 of 7 30/47
Scope
• Formulate problem of Forward Kinematics (FK) in robotics.
• Introduce Denavits-Hartenberg (DH) formalism to assign coordinate frames to robot joints.
• Solve FK problem using matrix manipulation of homogenous transformations.
Introduction Robotics, lecture 2 of 7 31/47
Forward kinematics problem
• Determine position and orientation of the end-effector as function of displacements in robot joints.
Introduction Robotics, lecture 2 of 7 32/47
Illustration: planar manipulator with 2 joints
• Position of end-effector:
• Orientation of end-effector:
Introduction Robotics, lecture 2 of 7 33/47 Conventions (1/2) 1. there are n joints and hence n + 1 links; joints 1, 2, …, n; links 0, 1, …, n, 2. joint i connects link i − 1 to link i, 3. actuation of joint i causes link i to move, 4. link 0 (the base) is fixed and does not move, 5. each joint has a single degree-of-freedom (dof):
Introduction Robotics, lecture 2 of 7 34/47 Conventions (2/2)
6. frame oixiyizi is attached to link i; regardless of motion of the robot, coordinates of each point on link i are constant when expressed in frame
oixiyizi, 7. when joint i is actuated, link i
and its attached frame oixiyizi experience resulting motion.
Introduction Robotics, lecture 2 of 7 35/47
DH convention for homogenous transformations (1/2)
• An arbitrary homogeneous transformation is based on 6 independent variables: 3 for rotation + 3 for translation. • DH convention reduces 6 to 4, by specific choice of the coordinate frames. • In DH convention, each homogeneous transformation has the form:
Introduction Robotics, lecture 2 of 7 36/47
DH convention for homogenous transformations (2/2) • Position and orientation of coordinate frame i with respect to frame i-1 is specified by homogenous transformation matrix:
q xn z 0 0 q i+1 zn qi ‘0’ n y0 αi ‘ ’ yn zi ai x0 xi
di z i-1 q where i xi-1
Introduction Robotics, lecture 2 of 7 37/47
Mathematical rational (1/3) • There exists unique homogenous transformation
matrix A1 that expresses coordinates from frame 1 relative to frame 0.
Introduction Robotics, lecture 2 of 7 38/47
Mathematical rational (2/3)
x1 ⋅ x0 y1 ⋅ x0 z1 ⋅ x0 0 = ⋅ ⋅ ⋅ ⊥ ⇒ ⋅ = R1 x1 y0 y1 x0 z1 x0 ; x1 z0 x1 z0 0 x1 ⋅ z0 y1 ⋅ z0 z1 ⋅ z0
0 • Each column and row of R1 has unique length, implying 2 2 2 2 (x1 ⋅ x0 ) + (x1 ⋅ y0 ) =1 and (y1 ⋅ z0 ) + (z1 ⋅ z0 ) =1 and in turn there exist unique θ and α such that
(x1 ⋅ x0 , x1 ⋅ y0 ) = (cos θ, sin θ )
(y1 ⋅ z0 , z1 ⋅ z0 ) = (sin α, cos α)
0 0 • Other elements of R1 ensure R1 ∈SO(3) .
Introduction Robotics, lecture 2 of 7 39/47
Mathematical rational (3/3)
• Displacement between the origins of frames 1 and 0 is linear
combination of vectors z0 and x1: 0 0 0 0 o1 = o0 + dz 0 + ax 1 = 0 0 cos θ = 0 + d 0 + asin θ = 0 1 0 a cos θ = asin θ . d
Introduction Robotics, lecture 2 of 7 40/47 Physical meaning of DH parameters
• Link length ai is distance from zi-1 to
zi measured along xi. q xn z 0 • Link twist α is angle between z 0 q i i-1 i+1 zn qi and z measured in plane normal ‘0’ n i y0 αi ‘ ’ yn zi ai to x (right -hand rule). x0 i xi
• Link offset di is distance from origin di z i-1 q of frame i-1 to the intersection x i i xi-1
with zi-1, measured along zi-1.
• Joint angle θi is angle from xi-1 to xi
measured in plane normal to zi-1 (right-hand rule). Introduction Robotics, lecture 2 of 7 41/47 DH convention to assign coordinate frames 1. Assign zi to be the axis of actuation for joint i+1 (unless otherwise stated zn
coincides with zn-1).
2. Choose x0 and y0 so that the base frame is right-handed.
3. Iterative procedure for choosing oixiyizi depending on oi-1xi-1yi-1zi-1 (i=1, 2, …, n-1):
a) zi−1 and zi are not coplanar; there is an unique shortest line segment from zi−1 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,
b) zi−1 is parallel to zi; there are infinitely many common normals; choose xi as the normal passes through oi−1 ; choose oi as the point at which this normal intersects zi; choose yi to form a right-handed frame,
c) zi−1 intersects zi; axis xi is chosen normal to the plane formed by zi and zi−1 ; it’s positive direction is arbitrary; the most natural choice of oi is the intersection of zi and zi−1 , however, any point along the zi suffices; choose yi to form a right-handed frame. Introduction Robotics, lecture 2 of 7 42/47
Forward kinematics (1/2)
• Homogenous transformation matrix relating the frame oixiyizi to
oi-1xi-1yi-1zi-1:
Ai specifies position and orientation of oixiyizi w.r.t. oi-1xi-1yi-1zi-1.
i • Homogenous transformation matrix Tj expresses position and
orientation of ojxjyjzj with respect to oixiyizi: i K T j = Ai+1Ai+2 Aj−1Aj
Introduction Robotics, lecture 2 of 7 43/47
Forward kinematics (2/2) • Forward kinematics of a serial manipulator with n joints can be 0 represented by homogenous transformation matrix Hn which defines position and orientation of the end-effector’s (tip)
frame onxnynzn relative to the base coordinate frame o0x0y0z0: 0 0 K H n (q) = Tn (q) = A1(q1) ⋅ ⋅ An (qn ), 0 0 0 Rn (q) xn (q) H n (q) = 03×1 1
03×1 = [0 0 0]; L T q = [q1 qn ] Introduction Robotics, lecture 2 of 7 44/47
Case-study: RRR robot manipulator
d3 x3 x2 y3 z3 y 2 -q 3 d a3 y 2 1 z2 x1 elbow α1 q 2 a2
z1 z0 shoulder d1 α1 - twist angle y 0 ai - link lenghts
q1 waist di - link offsets Introduction Robotics, lecture 2 of 7 x0 qi - displacements 45/47 DH parameters of RRR robot manipulator
Introduction Robotics, lecture 2 of 7 46/47
Forward kinematics of RRR robot manipulator (1/2)
• Coordinate frame o3x3y3z3 is related with the base frame o0x0y0z0 via homogenous transformation matrix: 0 T3(q) = A1(q)A 2(q)A 3(q) = R0(q) x0(q) = 3 3 01×3 1 where T 0 T q = [q1 q2 q3] x3(q) = [x y z]
01×3 = [0 0 0]
Introduction Robotics, lecture 2 of 7 47/47
Forward kinematics of RRR robot manipulator (2/2)
• Position of end-effector:
x = cos q1[a3cos( q2 + q3) + a2cos q2 ]+ (d2 + d3)sin q1
, y = sin q1[a3cos( q2 + q3) + a2cos q2 ]−(d2 + d3)cos q1
, z = a3sin( q2 + q3) + a2sin q2 + d1
• Orientation of end-effector:
cos q1cos( q2 + q3) − cos q1sin( q2 + q3) sin q1 0 R3 = sin q1cos( q2 + q3) − sin q1sin( q2 + q3) − cos q1 sin( q2 + q3) cos( q2 + q3) 0
Introduction Robotics, lecture 2 of 7