100% found this document useful (1 vote)
394 views29 pages

Forward and Inverse Kinematics

This document is the first part of a chapter about robot kinematics and end effectors. It introduces forward and inverse kinematics, which are used to determine a robot's end position and required joint angles, respectively. It also covers basic concepts of frames and reference frames to describe object positions and orientations. Transformation matrices are used to represent translations, rotations, and combined movements between frames. The chapter provides examples of representing different transformations and using matrices to relate points in different frames.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
394 views29 pages

Forward and Inverse Kinematics

This document is the first part of a chapter about robot kinematics and end effectors. It introduces forward and inverse kinematics, which are used to determine a robot's end position and required joint angles, respectively. It also covers basic concepts of frames and reference frames to describe object positions and orientations. Transformation matrices are used to represent translations, rotations, and combined movements between frames. The chapter provides examples of representing different transformations and using matrices to relate points in different frames.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Chapter 

9: Forward and Inverse 
Kinematics & Robot End Effector

BY: MF RAJEMI
COURSE : BJTM3063 (Automation &
Robotics)
UNIVERSITI UTARA MALAYSIA (UUM)

1
ROBOT KINEMATICS : POSITION ANALYSIS

Objectives:

- forward kinematic equations, to determine where the robot’s end (hand)


will be if all joint variables are known.

- Inverse kinematics to calculate what each joint variable must be in order


to locate the hand at a particular point and a particular orientation.

2
- Robots are three-dimensional machines if they are to move in space
- Robots are open-loop mechanisms

a. Closed loop b. Open loop


z

cz

by
x ax
y

Px Py Pz
a x  ; by  ; c z 
w w w

4
Representation of a Frame at the Origin of a Fixed Reference Frame

A frame is generally represented by three mutually orthogonal axes (such as x, y,


and z). Since we may have more than one frame at any given time, we will use axes
x, y, and z to represent the fixed Universe reference frame Fx,y,z and a set of axes n,
o, and a to represent another (moving) frame Fn,o,a relative to the reference frame.

z
 nx ox ax Px 
a n oy ay Py 
F  y
o  nz oz az Pz 
 
0 0 0 1
n

y
x

5
Example:

The frame F shown is located at 3 , 5 , 7 units, with its n-axis


=
parallel to x, its o-axis at 450 relative to the y-axis, and its a-axis at
450 relative to the z-axis. The frame can be described by:

1 0 0 3
0 cos 450  sin 450 5
F 
z 0 sin 450 cos 450 7
 
a 450 o 0 0 0 1

450

n 1 0 0 3
0 0.707  0.707 5
F
0 0.707 0.707 7
 
0 0 0 1

x y

6
Representation of a Pure Translation
- If a frame (that may also be representing an object) moves in space
without any change in its orientation, the transformation is a pure
translation
- The transformation matrix , T is given below:
1 0 0 d x 
z 0 1 0 d 
a a T  y

0 0 1 d z 
 
0 0 0 1 
o o
n n Moving from point P with
pure translation of d, the
new location matrix is
x y given as follow:

1 0 0 dx  nx ox ax Px  nx ox ax Px  dx 
0 1 0 dy  ny oy ay Py  ny oy ay Py  dy 
Fnew    
0 0 1 dz nz
 oz az Pz nz
 oz az Pz  dz 
     
0 0 0 1 0 0 0 1  0 0 0 1  7
Example:
A frame F has been moved 10 units along the y-axis and 5 units along
the z-axis of the reference frame. Find the new location of the frame

 0.527  0.574 0.628 5


 0.369 0.819 0.439 3
F  
 0.766 0 0.643 8
 
 0 0 0 1

Solution:

1 0 0 0   0.527  0.574 0.628 5  0.527  0.574 0.628 5 


0 1 0 10  0.369 0.819 0.439 3  0.369 0.819 0.439 13
Fnew    
0 0 1 5   0.766 0 0.643 8  0.766
 0 0.643 13
     
0 0 0 1  0 0 0 1  0 0 0 1

8
Representation of a Pure Rotation about an Axis

Let’s assume that a frame Fnoa, located at the origin of the reference frame Fxyz,
rotates an angle of θ about the x-axis of the reference frame. Let’s also assume
that attached to the rotating frame Fnoa, is a point p, with coordinates px, py, and
pz relative to the reference frame and pn, po, and pa relative to the moving
frame. As the frame rotates about the x-axis, point p attached to the frame will
also rotate with it. Before rotation, the coordinates of the point in both frames
are the same (remember that the two frames are at the same location and are
parallel to each other). After rotation, the pn, po, and pa co- ordinates of the
point remain the same in the rotating frame Fnoa, but px, py, and pz will be
different in the Fxyz frame
z
z

P
a a Pz
Pz o
n
n
x o y x y
Px Px Py
Py

a. Before rotation b. After rotation 9


Representation of a Pure Rotation about an Axis

Representation of matrix with pure rotation on x-axis :


1 0 0 
Rot  x,   0 Cos  Sin 
0 Sin Cos 

Representation of matrix with pure rotation on y-axis :

 Cos 0 Sin 
Rot  y,    0 1 0 
 Sin 0 Cos 

Representation of matrix with pure rotation on z-axis :

Cos  Sin 0
Rot  z ,    Sin Cos 0
 0 0 1

*Example 2.7 (Pure rotation) & Example 2.8 (Combined Transformation) 10


Inverse of Transformation Matrices
One situation where transformation matrices may be involved can be seen in the
following example. Suppose the robot in Figure to be moved toward part P in order
to drill a hole in the part. The robot’s base position relative to the reference frame U
is described by a frame R, the robot’s hand is described by frame H, and the end
effector (let’s say the end of the drill bit that will be used to drill the hole) is described
by frame E. The part’s position is also described by frame P. The location of the
point where the hole will be drilled can be related to the reference frame U through
two independent paths: one through the part, one through the robot. Therefore, the
following equation can be written:
U
TE U TR RTH H TE U TP PTE

The location of point E on the part can


E be achieved by moving from U to P
and from P to E, or it can alternately
be achieved by a transformation from
H
U to R, from R to H, and from H to E.
P
R

*Refer to Example 2.15


U

11
Chapter 9: Forward and Inverse 
Kinematics & Robot End Effector 
(End of PART 1)

BY: MF RAJEMI
COURSE : BJTM3063 (Automation &
Robotics)
UNIVERSITI UTARA MALAYSIA (UUM)

12
Chapter 9: Forward and Inverse 
Kinematics & Robot End Effector 
(PART 2)

BY: MF RAJEMI
COURSE : BJTM3063 (Automation &
Robotics)
UNIVERSITI UTARA MALAYSIA (UUM)

13
Forward and Inverse Kinematics of Robots

- Suppose we have a robot whose configuration is known. This means that all
the link lengths and joint angles of the robot are known. Calculating the
position and orientation of the hand of the robot is called forward kinematic
analysis. In other words, if all robot joint variables are known, using forward
kinematic equations, we can calculate where the robot is at any instant.

- However, if we want to place the hand of the robot at a desired location and
orientation, we need to know how much each link length or joint angle of the
robot must be such that—at those values—the hand will be at the desired
position and orientation. This is called inverse kinematic analysis.

14
Forward and Inverse Kinematic Equations: Position for Cartesian
(Gantry, rectangular) Coordinates

In this case, there will be three linear movements along the x-, y-, and z-axes.
In this type of robot, all actuators are linear (such as a hydraulic ram or a linear
power screw), and the positioning of the hand of the robot is accomplished by
moving the three linear joints along the three axes

a
z o The transformation matrix representing
the forward kinematic equation of the
P n position of the hand of the robot in a
Pz y Cartesian coordinate system will be

Px
1 0 0 Px 
Py 0 1 0 Py 
R
TP  Tcart 
x 0 0 1 Pz 
 
0 0 0 1
*Example 2.16
15
Forward and Inverse Kinematic Equations: Position for Cylindrical
Coordinates

A cylindrical coordinate system includes two linear translations and one rotation.
The sequence is a translation of r along the x-axis, a rotation of α about the z-axis,
and a translation of l along the z-axis. Since these transformations are all relative
to the Universe frame, the total transformation caused by these three
transformations is found by pre-multiplying by each matrix, as follows:
R
TP  Tcyl r , , l   Trans 0,0, l Rot  z ,  Trans r ,0,0 
a
z
o 1 0 0 0 Cos  Sin 0 0 1 0 0 r
0 1 0 0  Sin Cos 0 0 0 1 0 0
n R
TP    
0 0 1 l  0 0 1 0  0 0 1 0
P l      
0 0 0 1  0 0 0 1  0 0 0 1
y
Cos  Sin 0 rCos 
 Sin Cos 0 rSin 
R
TP  Tcyl  
 0 l 
 
0 1

r  0 0 0 1 

*Example 2.18
x 16
Forward and Inverse Kinematic Equations: Position for Spherical
Coordinates

A spherical coordinate system consists of one linear motion and two rotations. The
sequence is a translation of r along the z-axis, a rotation of β about the y-axis, and a
rotation of γ about the z-axis as shown in Figure. Since these transformations are all
relative to the Universe frame, the total transformation caused by these three
transformations can be found by pre-multiplying by each matrix, as follows

z R
TP  Tsph r ,  ,    Rot z ,  Rot  y ,  Trans 0,0, r 
aa
Cos  Sin 0 0  Cos 0 Sin 0 1 0 0 0
o
o  Sin Cos 0 0  0 1 0 0 0 1 0 0
R
TP    
r
r
n
n  0 0 1 0  Sin 0 Cos 0  0 0 1 r
     
 0 0 0 1  0 0 0 1  0 0 0 1
p
yy
CosCos  Sin Sin Cos rSin Cos 
 CosSin Cos Sin Sin rSin Sin 
TP  Tsph
R

  Sin 0 Cos rCos 
 
 0 0 0 1 
x
x

*Example 2.19 17
Robot End Effectors
Mechanical Gripper

Two ways of constraining the part in the gripper:

The physical constriction of the part within the fingers:

The gripper fingers enclose the part to some extent, thereby constraining the 
motion of the part. This usually accomplished by designing the contacting surfaces 
of the fingers to be in the approximate shape of the part
geometry.

18
Robot End Effectors
Two ways of constraining the part in the gripper:

By friction between the fingers and the work part:
• With this approach, the fingers must apply a force that is 
sufficient for friction to retain the part against gravity, 
acceleration and any other force that might arise during 
the holding portion of the work cycle.

The fingers or the pads attached to the fingers that make 
contact with the part, are generally fabricated out of 
material that is relatively soft. This tends to
increase the coefficient of friction between the part and the 
contacting finger surface and serves to protect the part 
surface from scratching or other damage.

19
Robot End Effectors
Gripper force analysis:

a) How to determine the magnitude of the required input power 
in order to obtain a given gripping force:

b) Covers the case in which weight alone is the force tending to 
cause the part to slip out of the gripper when the force gravity is 
directly parallel to contacting surface.

c) Its covers the case when the force tending to pull the part out of 
the finger is greater than the weight of the object, because the 
acceleration or deceleration of the part could exert a force that is 
twice the weight of the part.

20
Force Analysis
µηFg=ωg
µ = coefficient of friction of the finger contacts surface against the part surface
η = number of contacting fingers
Fg = gripper force
ω = weight of the part or object being gripped

g = factor of the combined effect of gravity and


acceleration, given as follows:
g = 3.0,if the acceleration force is applied in the same direction as the
gravity force
g = 2.0, if the acceleration is applied in a horizontal direction
g = 1.0, if the acceleration is applied in the opposite direction of the
gravity force

SF = safety factor

21
Robot End Effectors
Example force analysis:
A cardboard carton weighting 10 kg is held in a gripper using friction against two 
opposing fingers. The coefficient of friction is 0.25. The weight of the carton is 
directed parallel to the finger surfaces.
Determine the required gripper force for the condition given and if SF = 1.5, what 
would be the value of the gripper force?

22
Robot End Effectors
Solution force analysis:

µ = 0.25, η =2 , ω = 10 kg , g = 3.0

µηFg=ωg
Fg=ωg/µη = (10)(3.0)/0.25 x 2 = 60 kg

The gripper must cause a force of 60 kg to be exerted by the
fingers against the carton surface

If SF = 1.5
Fg= 1.5 x 60 = 90 kg

The required gripper force would be 90 kg. This safety factor
would help to compensate for the potential problem of the carton
being grasped at a position other than its center of mass.
23
Robot End Effectors
Example force analysis:
Suatu batang keluli yang beratnya  7kg diangkat oleh pegenggam (gripper) berjari 
tiga dengan angkali geseranyan 0.25.  Berat batang keluli adalah mendatar pada 
permukaan jari.
Kirakan daya yang diperlukan oleh pegenggam.  Jika faktor keselamatan adalah 
1.5, berapakah nilai daya pegenggam.

24
Robot End Effectors
Vacuum:

i) Vacuum is used as the gripping force where the part or
product is lifted by vacuum cups or by a vacuum surface.

ii) The lifting power is a function of the degree of vacuum
achieved and the size of the area on the part where the
vacuum is applied.

iii) Vacuum cups or suction cups: Made of neoprene or synthetic
rubber, extremely lightweight.

iv) The number, size and type of cups used will depend on the
weight, size, shape and type of material being handled.

v) Multiple‐cup vacuum grippers will increase the contact surface
area and permit the size and weight of the work piece to be
increased. 25
Robot End Effectors
Vacuum:

vi) The lift capacity of the suction cup depends on the effective
area of the cup and the negative air pressure between the cup
and the object to be lifted.

F=PA
F=the force or lift capacity (kg)
P= the negative pressure (kg/m2)
A=the total effective area of the suction
cup used to create vacuum (m2)

26
Robot End Effectors
Vacuum:
Example:
A vacuum gripper is used to lift flat steel plates 0.25 x 24 x 36 inches. The gripper 
will utilize two suction cups, 5.0 inches in diameter, and they will be located 18 
inches apart for stability. A safety factor of 2 should be used to allow for 
acceleration of the plate. Determine the negative pressure required to lift the plates
if the density of the steel is 0.28 lb/in3.

27
Robot End Effectors
Vacuum:
Solution:
The weight of the plate would be:
w = 0.28 [lb/in3] x 0.25 [in] x 24[in] x 36[in] = 60.48 lb

This would be equal to the force F that must be applied by the two 
suction cups. The area of each suction cup would be:
A = πr2 =3.14(5/2)2 = 19.63 in2

The area of the two cups would be:
2 x 19.63 = 39.26 in2
So,
F = PA or w = PA
P= w/A = 60.48 lb/39.26 in2 = 1.54 lb/ in2 

Applying the safety factor of 2, we have:
P = 2 x 1.54 lb/in2 = 3.08 lb/ in2  negative pressure.

28
Chapter 11: Forward and Inverse 
Kinematics & Robot End Effector 
(End)

BY: MF RAJEMI
COURSE : BJTM3063 (Automation &
Robotics)
UNIVERSITI UTARA MALAYSIA (UUM)

29

You might also like