Class Robotics Unit3
Class Robotics Unit3
Translational motion
Linear joint (type L)
Orthogonal joint (type O)
Rotary motion
Rotational joint (type R)
Twisting joint (type T)
Revolving joint (type V)
Translational Motion Joints
Linear joint
(type L)
Orthogonal joint
(type O)
Rotary Motion Joints
Rotational joint
(type R)
Twisting joint
(type T)
Revolving joint
(type V)
Joint Notation Scheme
Notation TRL:
Notation TLO:
Notation LOO:
Notation TRR:
General configuration
of a human arm
SCARA Robot
Notation VRO
SCARA stands for Selectively
Compliant Assembly Robot
Arm
Similar to jointed-arm robot
except that vertical axes are
used for shoulder and elbow
joints to be compliant in
horizontal direction for vertical
insertion tasks
Wrist Configurations
Electric
Uses electric motors to actuate individual joints
Preferred drive system in today's robots
Hydraulic
Uses hydraulic pistons and rotary vane actuators
Noted for their high power and lift capacity
Pneumatic
Typically limited to smaller robots and simple material
transfer applications
Robot Control Systems
1. Mechanical Grippers
2. Hooks and Scoops
3. Magnetics Grippers
4. Vacuum Grippers
5. Expandable Bladder Type Grippers
6. Adhesive Grippers
Mechanical grippers
Dual grippers
Interchangeable fingers
Sensory feedback
To sense presence of object
To apply a specified force on the object
Multiple fingered gripper (similar to human hand)
Standard gripper products to reduce the amount of
custom design required
Manipulator Kinematics: Homogeneous transformations as
applicable to rotation and translation – DH notation, Forward and
inverse kinematics.
Introduction to Manipulator Kinematics
Develop a scheme for
controlling manipulator
motion by representing
position of arm at points
in time.
4
5
ROBOT MOTION ANALYSIS
V = (x, y)
4
8
ROBOT MOTION ANALYSIS
Forward KinematicTransformation
LL Robot:
Let us consider a Cartesian LL robot
Joints J1 and J2 are linear
joints with links of variable
lengths L1 and L2. Let
y
J 1( x 1 , y1) L
2 joint J1 be denoted by (x1
y1) and joint J2 by (x2,
J 2 ( x 2 ,y 2 )
y2). L
3
x2=x1+L2 y2 = y1
x
5
3
Forward KinematicTransformation
These relations can be represented in homogeneous
matrix form:
x2 1 0 L2 x1
y2 0 1 0 y1
1 0 0 1 1
or X2=T1 X1
5
4
Forward KinematicTransformation
where
x2 1 0 L2 x1
X2 y 2 T1 0 1 0 X1y1
1 0 0 1 1
If the end-effector point is denoted by (x, y), then:
x = x2
y = y2 - L3
5
5
Forward KinematicTransformation
therefore
: x 1 0 0 x2
y 0 1 L2 y2
1 0 0 1 1
X = T2 X2
or TLL = T2 T1
and 1 0 L2
TLL 0 1 L
0 0 1
5
6
Forward
KinematicTransformation
RR Robot:
Let q and a be the rotations at joints J1 and J2
respectively. Let J1 and J2 have the coordinates of (x1,
y1) and (x2, y2), respectively.
x2 = x1+L2 cos(q)
y2 = y1 +L2 sin(q)
5
7
Forward KinematicTransformation
In matrix form:
x2 1 0 L2 cos(q) x1
y2 0 1 L2 sin(q) y1
1 0 0 1 1
or
X 2 = T1 X 1
On the other end:
x = x2 +L3 cos(a-q)
y = y2 - L3 sin(a-q)
5
8
Forward
KinematicTransformation
In matrix form: x 1 0 L2 cos(a q) x2
y 0 1 L2 sin(a q) y2
1 0 0 1 1
or
X = T2 X2
Forward KinematicTransformation
where
TRR = T2 T1
Forward KinematicTransformation
TL Robot:
Let a be the rotation at twisting joint J1 and L2 be the
variable link length at linear joint J2.
z
y
J
2
( x 2 y 2 )
One can write that:
( x y )
L
2
x = x2 + L2 cos(a)
J1 ( x 1 y 1 )
y = y2 + L2 sin(a)
x
6
1
Forward KinematicTransformation
In matrix form:
or
X = TTL X2
6
2
x = x1 + L2
y = y1 - L3
y1 = y2
L2 = x - x1
L3 = -y +y2
6
3
RR Robot:
x = x1 + L2 cos(q) + L3 cos(a-q)
y = y1 + L2 sin(q) - L3 sin(a-q)
6
4
cos (a ) =
x - x y y L L
1
2
1
2 2
2
2
3
2 L 2 L3
and
tan(q ) =
y - y1 L2 L3 cos(a ) x x1 L3 sin( a )
x - x1 L2 L3 cos(a ) y y1 L3 sin( a )
6
5
Backward Kinematic Transformation
TL Robot:
x = x2 + L cos(a)
y = y2 +L sin(a)
One can easily get the equations for length and angle:
L= x - x 2 2 y y 2 2
and
y - y2
sin(a) =
L
6
6
EXAMPLE
EXAMPLE
1 0 L2
TLL 0 1 L3
Solution: 0 0 1
a) It is given that: 1 0 3
TLL 0 1 5
(x1, y1) = (0, 0) 0 0 1
x x1
y TLLy1
1 1
Therefore the end-
effector point is x 1 0 3 0
y 0 1 50
given by (3, -5). 1 0 0 1 1
x 3
y 5
1 1
6
9
EXAMPLE
b) The end effector point is given by (3, 5)
Then: L2 = x - x1 = 3 - 0 = 3 m
L3 = -y + y1 = -5 + 0 = -5 m
EXAMPLE
An RR robot has two links of length 1 m. Assume that the origin of
the global coordinate system is at J1.
a) Determine the coordinate of the end-effector point if the joint
rotations are 30o at both joints.
b) Determine joint rotations if the end-effector is located at (1, 0)
7
1
EXAMPLE
It is given that (x1, y1) = (0, 0) 1 0 3 1
2
TRR 0 1 1 0
2
0 0 1
1 0 L2 cos(q) L2 cos(a q)
TRR 0 1 L2 sin(q) L2 sin(a q) x x1
0 0 1 y = TRRy1
1 1
x 1 0 18667
. 0
Therefore the end-effector point y
0 1 0.5 0
is given by (1.8667, 0.5) 1 0 0 1 1
x 18667
.
y 0.5
1 0.51
7
2
EXAMPLE
7
3
EXAMPLE
It is given that (x, y) = (1, 0), therefore,
x 2 y 2 L22 L23
cos(a ) =
2 L3 L2
12 0 2 12 12
cos(a ) = 0.5
2 x1x1
a = 120o
7
4
EXAMPLE
tan(q ) =
y - y1 L2 L3 cos(a ) x x1 L3 sin( a )
x - x1 L2 L3 cos(a ) y y1 L3 sin( a )
tan(q ) =
0 - 01 1x cos(120) 1 01 sin( 120)
1 - 01 1cos(120) 0 01 sin( 120)
3
tan(q) = 2 = 3
0.5
q = 60o
7
5
EXAMPLE
z
y
J ( 0 0 )
2
( x y )
L = 1 m
2
J1 ( x 1 y 1 )
x
7
7
EXAMPLE
1 0 1cos(30o )
1 0 L2 cos(a ) TTL 0 1 1sin( 30o )
TTL 0 1 L2 sin( a ) 0 0 1
0 0 1
1 0 0.866
TTL 0 1 0.5
0 0 1
7
8
EXAMPLE
x 1 0 0.866 0
y 0 1 0 .5 0
1 0 0 1 1
x 0.866
y 0 .5
1 1
L = (x - x1 ) 2 ( y y1 ) 2
L = (0.7071 - 0) 2 (0.7071 0) 2
L 1m
Start point:
• Assign joint number n to the first shown joint.
• Assign a local reference frame for each and every
joint before or after these joints.
• Y-axis is not used in D-H representation.
DENAVIT-HARTENBERG REPRESENTATION
Procedures for assigning a local reference frame to each joint:
Z(i - 1)
Y(i -1) Yi Zi
Xi ai
a(i - 1 di
X(i -1) )
qi
q( i -
• 1)
IDEA: Each joint is assigned a coordinate frame.
• Using the Denavit-Hartenberg notation, you need 4 parameters to describe how
a frame (i) relates to a previous frame ( i -1 ).
Z(i - 1)
Y(i -1) Yi Zi
Xi ai
a(i - 1 ) di
X(i -1)
i
( i - 1)
⊙ q : A rotation about the z-axis.
⊙ d : The distance on the z-axis.
⊙ a : The length of each common normal (Joint offset).
⊙ a : The angle between two successive z-axes (Joint twist)
• It’s Usually on the Diagram Approach -
If the diagram already specifies the various coordinate frames, then the
common perpendicular is usually the X(i-1) axis.
• So a(i-1) is just the displacement along the X(i-1) to move from the (i-1) frame to
the i frame.
Z(i - 1)
Y(i -1) Y Zi
i
Xi ai
a(i - 1 ) di
X(i -1)
( i -
i
1)
i.e. How much you have to rotate around the X(i-1) axis so that the Z(i-1) is pointing
in the same direction as the Zi axis.
Z(i - 1)
Y(i -1) Y Zi
i
Xi ai
a(i - 1 ) di
X(i -1)
i
( i - 1)
3) d(i-1) The d(i-1) Parameter
Technical Definition:
The displacement along the Zi axis needed to align the a(i-1) common
perpendicular to the ai common perpendicular.
In other words, displacement along the Zi to align the X(i-1) and Xi axes.
4) i The i Parameter
Amount of rotation around the Zi axis needed to align the X(i-1) axis with the Xi
axis.
Z(i - 1)
Y(i -1) Y Zi
i
X a
a(i - 1 ) d
X(i -1) i i
i
i
( i - 1)
sinθ i sinα (i 1) cosθ i sinα (i 1) cosα (i 1) cosα (i 1)d i
0 0 0 1
Just like the Homogeneous Matrix, the Denavit-Hartenberg Matrix is a
transformation matrix from one coordinate frame to the next.
Using a series of D-H Matrix multiplications and the D-H Parameter table, the
final result is a transformation matrix from some frame to your initial frame.
Z(i -
Put the transformation here 1) Y(i - Y Z
1) i i X a
a(i - d
⊙ q : A rotation about the z-axis. X(i - i i
( i - 1) 1)
1) i i
⊙ d : The distance on the z-axis.
⊙ a : The length of each common normal (Joint offset).
⊙ a : The angle between two successive z-axes (Joint twist)
Example:
Calculating the final DH
matrix with the DH
Parameter Table
Example with three Y2 The DH
Revolute Joints
Z0 Z1 Parameter
Table
X2
d2
X0 X1
Y0 Y1
Denavit-Hartenberg Link
a0 a1 Parameter Table
i a(i-1) a(i-1) di qi
Notice that the table has two uses:
1) To describe the robot with its 0 0 0 0 q0
variables and parameters.
2) To describe some state of the 1 0 a0 0 q1
robot by having a numerical values
for the variables. 2 -90 a1 d2 q2
We calculate with respect to
previous
Example with three Y2
Revolute Joints
Z0 Z1
X2
d2
X0 X1
Y0 Y1
Denavit-Hartenberg Link
a0 a1 Parameter Table
i a(i-1) a(i-1) di qi
Notice that the table has two uses:
1) To describe the robot with its 0 0 0 0 q0
variables and parameters.
2) To describe some state of the 1 0 a0 0 q1
robot by having a numerical values
for the variables. 2 -90 a1 d2 q2
a a
0 1 The same table as last slide
V X 2
Y2
V T ( 0T)( 01T)( 12T)
V X 0 Y0 Z 0
T Z
V 2
1 Note: T is the D-H matrix with (i-1)
World coordinates
tool coordinates = 0 and i = 1.
These matrices T
are calculated in
next slide
The same table as last slide
i a(i-1) a(i-1) di qi cosθ 0 sinθ0 0 0
sinθ cosθ0 0 0
0 0 0 0 q0 T 0
0
0 0 1 0
1 0 a0 0 q1 0 0 0 1
This is just a rotation around
2 -90 a1 d2 q2
the Z0 axis