Uploaded by wasif ahmed

3869642

advertisement
Chapter 3: Forward Kinematics
ROBOTICS
Outline:
•
•
•
•
•
•
•
Introduction
Link Description
Link-Connection Description
Convention for Affixing Frames to Links
Manipulator Kinematics
Actuator Space, Joint Space, and Cartesian Space
Example: Kinematics of PUMA Robot
1
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Introduction:
• Kinematics:
Motion without regarding the forces that cause it (Position, Velocity,
and Acceleration). Geometry and Time dependent.
• Rigid links are assumed, connected with joints that are
instrumented with sensors to the measure the relative
position of the connected links.
– Revolute Joint Sensor Joint Angle
– Prismatic Joint Sensor Joint Offset/Displacement
• Degrees of Freedom
# of independent position variables which have to be specified in
order to locate all parts of the mechanism
2
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Introduction:
• Degrees of Freedom
Ex: 4-Bar mechanism,
# of independent position
variables = 1
 DoF = 1
• Typical industrial open chain serial robot
1 Joint  1 DoF
 # of Joints ≡ # of DoF
• End Effector:
Gripper, Welding torch, Electromagnetic, etc…
Faculty of Engineering - Mechanical Engineering Department
3
Chapter 3: Forward Kinematics
ROBOTICS
Introduction:
• The position of the manipulator is described by giving a
description of the tool frame (attached to the E.E.) relative
to the base frame (non-moving).
• Froward kinematics:
Given
Joint Angles
Calculate
Joint space
(θ1,θ1,…,θDoF)
Position & Orientation of the
tool frame w. r. t. base frame
Cartesian space
(x,y,z, and orientation angles)
4
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
Link Description:
• Links Numbering:
E.E.
n-1
ROBOTICS
In this chapter:
- Rigid links are assumed which
define the relationship between
the corresponding joint axes of
the manipulator.
n
2
1
Base
0
5
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Link Description:
• Joint axis (i):
Is a line in space or direction
vector about which link (i)
rotates relative to link (i-1)
• ai ≡ represents the distance
between axes (i & i+1) which is a
property of the link (link
geometry)
ai ≡ ith link length
• αi ≡ angle from axis i to i+1 in
right hand sense about ai.
αi ≡ link twist
• Note that a plane normal to ai axis will be parallel to both
axis i and axis i+1.
Faculty of Engineering - Mechanical Engineering Department
6
Chapter 3: Forward Kinematics
ROBOTICS
Link Description
• Example: consider the link, find link length and twist?
a = 7in
α = +45o
7
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Joint Description
• Intermediate link:
Axis i ≡ common axis between links i and i-1
di ≡ link offset ≡ distance along this
common axis from
one link to the next
θi ≡ joint angle ≡ the amount
of rotation about this
common axis between
one link and the other
• Important
di ≡ variable if joint i is prismatic
θi ≡ variable if joint i is revolute
Faculty of Engineering - Mechanical Engineering Department
8
Chapter 3: Forward Kinematics
ROBOTICS
Joint Description
• First and last links:
– Use a0 = 0 and α0 = 0. And an and αn are not needed to be defined
• Joints 1:
– Revolute  the zero position for θ1 is chosen arbitrarily.
 d1 = 0.
– Prismatic  the zero position for d1 is chosen arbitrarily.
 θ1 = 0.
• Joints n: the same convention as joint 1.
Zero values were assigned so that later calculations will be as
simple as possible
9
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Joint Description
• Link parameters
Hence, any robot can be described kinematically by giving
the values of four quantities for each link. Two describe
the link itself, and two describe the link's connection to a
neighboring link. In the usual case of a revolute joint, θi is
called the joint variable, and the other three quantities
would be fixed link parameters. For prismatic joints, d1 is
the joint variable, and the other three quantities are fixed
link parameters. The definition of mechanisms by means
of these quantities is a convention usually called the
Denavit—Hartenberg notation
10
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• A frame is attached rigidly to each link; frame {i} is
attached rigidly to link (i), such that:
Intermediate link
– 𝑍𝑖 -axis of frame {i} is coincident with the joint axis (i).
– The origin of frame {i} is located where the ai perpendicular
intersects the joint (i) axis.
– 𝑋𝑖 -axis points along ai in the direction from joint (i) to joint (i+1)
– In the case of ai = 0, 𝑋𝑖 is normal to the plane of 𝑍𝑖 and 𝑍𝑖+1 . We
define α i as being measured in the right-hand sense about 𝑋𝑖 .
– 𝑌𝑖 is formed by the right-hand rule to complete the ith frame.
11
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
First link/joint:
– Use frames {0} and {1} coincident when joint variable (1) is zero.
 (a0 = 0, α0 = 0, and d0 = 0) if joint (1) is revolute
 (a0 = 0, α0 = 0, and d0 = 0) if joint (1) is revolute
Last link/joint:
– Revolute joint: frames {n-1} and {n} are coincident when θi = 0.
as a result di = 0 (always).
– Prismatic joint: frames {n-1} and {n} are coincident when di = 0.
as a result θi = 0 (always).
12
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• Summary
Note: frames attachments
is not unique
13
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• Example: attach frames for the following manipulator, and
find DH parameters…
14
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• Example: attach frames for the following manipulator, and
find DH parameters…
– Determine Joint axes 𝑍𝑖
(in this case out of the page)
 All αi = 0
– Base frame {0} when θ1 = 0
 𝑋0 can be determined.
– Frame {3} (last link) when θ3 = 0
 𝑋3 can be determined.
15
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• Construct the table:
16
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Convention for attaching frames to links
• Previous exam question
For the 3DoF manipulator
shown in the figure assign
frames for each link using DH
method and determine link
parameters.
17
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• Joint axes  𝑍- directions
Zˆ1 , Zˆ 0
Ẑ 3
Ẑ 2
18
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• 𝑋- directions
X̂ 3
Ẑ 3
X̂ 2
Ẑ 2
Zˆ1 , Zˆ0
Xˆ 1 , Xˆ 0
19
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• Origens
X̂ 3
X̂ 2
Ẑ 2
Zˆ1 , Zˆ0
O0 , O1 , O2
O3
Ẑ 3
Xˆ 1 , Xˆ 0
20
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• 𝑌- directions
X̂ 3
Yˆ2
Ẑ 2
X̂ 2
Zˆ1 , Zˆ0
O0 , O1 , O2
Yˆ1 , Yˆ0
Xˆ 1 , Xˆ 0
O3
Ẑ 3
Yˆ3
21
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• DH parameters…
d3
X̂ 3
a2
Yˆ2
Ẑ 2
X̂ 2
Zˆ1 , Zˆ0
O0 , O1 , O2
Yˆ1 , Yˆ0
Xˆ 1 , Xˆ 0
O3
Ẑ 3
Yˆ3
22
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Convention for attaching frames to links
• DH parameters…
i
ai-1
αi-1
θi
di
1
0
0
θ1
0
2
0
90
θ2
0
3
a2= Const.
90
0
d3
23
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Manipulator Kinematics
• Extract the relation between frames on the same link
 position & orientation of {n} relative to {0}
POSITION:
Zˆi 1
Yˆi 1
i 1
Zˆi
 i 1
di
POi 1 ,Oi


ai 1


   di sin  i 1  
 di cos  i 1  
Faculty of Engineering - Mechanical Engineering Department
24
Chapter 3: Forward Kinematics
ROBOTICS
Manipulator Kinematics
ORIENTATION:
Rotation about moving axes:
Originally {i-1} and {i} have the same orientation
– 1st rotation: rotation about 𝑋𝑖−1 by an angle αi-1.
– 2nd rotation: rotation about 𝑍𝑖 by an angle θi
i 1
i
R  Rot ( xˆ ,  i 1 ) Rot ( zˆ,i )
0
1
i 1
0 c
R

i
i 1

0 s i 1

 s i 1 

c i 1 
0
ci
 s
 i
 0
 si
ci
0
0
0

1 
25
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Manipulator Kinematics
ORIENTATION:
 si
 ci
i 1
 s c
R

ci c i 1
i
 i i 1
 si s i 1 ci s i 1

 s i 1 

c i 1 
0
TRANSFORMATION MATRIX:
i 1

iR
i 1
iT  
0 0 0
i 1
POi 1 ,Oi 

1 
 si
 ci
 s c
ci c i 1
i
i 1
i 1

iT 
 si s i 1 ci s i 1

0
 0
0
 s i 1
c i 1
0

di s i 1 

di c i 1 

1 
ai 1
Faculty of Engineering - Mechanical Engineering Department
26
ROBOTICS
Chapter 3: Forward Kinematics
Manipulator kinematics
• Example: for the previous manipulator find
i ai-1 αi-1
transformation matrix for each link.
 si
0
ai 1 
 ci
 s c

c

c


s


d
s

i
i 1
i 1
i
i 1 
i 1
 i i 1
iT 
di c i 1 
 si s i 1 ci s i 1 c i 1


0
0
1 
 0
 s1
0
a0  c1  s1
 c1
 s c c c  s d s   s
c1
1
0
1
0
0
1
0
1
0



1T 
d1c 0   0
0
 s1s 0 c1s 0 c 0

 
0
0
0
1
0

 0
 s 2
0
(0)  c1
 c 2
 s c(90) c c(90)  s (90) (0) s (90)   s
2
2
1
1



T


2
 s 2 s (90) c 2 s (90) c(90) (0)c(90)   0

 
0
0
0
1

 0
0 a0 
0 0

1 0

0 1
θi
di
1
0
0
θ1
0
2
0
90
θ2
0
3
a2
90
0
d3
Each matrix is
constructed from
one row of the table
 s1 0 a0 
c1 0 0 

0
1 0

0
0 1
Faculty of Engineering - Mechanical Engineering Department
the
27
ROBOTICS
Chapter 3: Forward Kinematics
Manipulator kinematics
• Example: for the previous manipulator find
i ai-1 αi-1
transformation matrix for each link.
 si
 ci
 s c
ci c i 1
i
i 1
i 1

iT 
 si s i 1 ci s i 1

0
 0
0
 s i 1
c i 1
0

di s i 1 

di c i 1 

1 
ai 1
 s (0)
0
a2   1
 c(0)
 s (0)c(90) c(0)c(90)  s (90) d s (90)  0
3
2


T

3
d 3c(90)  0
 s (0) s (90) c(0) s (90) c(90)

 
0
0
0
1

 0
the
θi
di
1
0
0
θ1
0
2
0
90
θ2
0
3
a2
90
0
d3
a2 
0 1 d 3 

1 0
0 

0 0
1 
0
0
28
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Manipulator kinematics
• Concatenating link transformations:
T  01T 21T ...
0
n
n2
n 1
T
n 1
n
T
Each transformation i 1iT has one variable (θi or di)
 0nT is a function of all n-joint variables
29
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Manipulator kinematics
• Concatenating link transformations:
T  01T 21T ...
0
n
n2
n 1
T
n 1
n
T
Each transformation i 1iT has one variable (θi or di)
 0nT is a function of all n-joint variables
30
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Example: Kinematics of PUMA Robot
31
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Example: Kinematics of PUMA Robot
Frame attachments
32
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Example: Kinematics of PUMA Robot
DH parameters
33
Faculty of Engineering - Mechanical Engineering Department
Chapter 3: Forward Kinematics
ROBOTICS
Example: Kinematics of PUMA Robot
Transformation matrices
Refer to the book for more kinematic equations
Faculty of Engineering - Mechanical Engineering Department
34
Chapter 3: Forward Kinematics
ROBOTICS
Actuator, Joint, and Cartesian Spaces:
• Joint Space: Joint variables (θ1/d1, θ2/d2, … θn/dn)
• Cartesian Space: Position and orientation of the E.E.
relative to the base frame
– Direct kinematics: joint variables  Position and orientation of
the E.E. relative to the base frame.
• Actuator Space: In most of cases, actuators are not
connected directly to the joints (Gear trains, mechanisms,
pulleys and chains …). Moreover, sensors/encoders are
mounted on the actuators rather than robot joints. Hence,
it will be easier to describe the motion of the robot by
actuator variables.
35
Faculty of Engineering - Mechanical Engineering Department
ROBOTICS
Chapter 3: Forward Kinematics
Actuator, Joint, and Cartesian Spaces:
Inverse
Problem
Direct
Problem
Inverse
Problem
Direct
Problem
Faculty of Engineering - Mechanical Engineering Department
36
Chapter 3: Forward Kinematics
ROBOTICS
Frames with standard names:
37
Faculty of Engineering - Mechanical Engineering Department
Download