Upload
xepost
View
228
Download
1
Embed Size (px)
Citation preview
7/29/2019 Introduction Robotics Lecture1
1/41
1/41
Introduction Robotics
Introduction Robotics, lecture 1 of 7
dr Dragan Kosti
WTB Dynamics and Control
September - October 2009
7/29/2019 Introduction Robotics Lecture1
2/41
2/41
Outline
Practical information: 4L160 Introduction Robotics
Robotics history
Introduction Robotics, lecture 1 of 7
Rigid motions and homogenous transformations
7/29/2019 Introduction Robotics Lecture1
3/41
3/41
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
4/41
4/41
Vision
Greeks: Aristotle writes
If every tool, when ordered, or even of its own accord, could do
Introduction Robotics, lecture 1 of 7
the work that befits it... then there would be no need either of
apprentices for the master workers or of slaves for the lords.
Automata: water clocks, mechanical animals,
mechanical orchestra etc.
7/29/2019 Introduction Robotics Lecture1
5/41
5/41
Leonardos robot (1495)
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
6/41
6/41
Jacques de Vaucanson (1738)
Introduction Robotics, lecture 1 of 7
J. de Vaucanson and his duck
7/29/2019 Introduction Robotics Lecture1
7/41
7/41
The notion of Robot (1921)
Introduction Robotics, lecture 1 of 7
Karel Capeks play Rossuums Universal Robots
Robot is coined from Czech word robota
Robota means labor
7/29/2019 Introduction Robotics Lecture1
8/41
8/41
Trademarks of science fiction
Introduction Robotics, lecture 1 of 7
Robot Maria in classic SF movieMetropolis of Fritz Lang (1926) Famous R2-D2 (left) and C3PO (right) in
SF saga Start Wars of George Lucas
(1977)
7/29/2019 Introduction Robotics Lecture1
9/41
9/41
Three Laws of Robotics
Formulated by Russian/American writer Isaac Asimov:
1. A robot may not harm a human being, or, through
i i ll w i .
Introduction Robotics, lecture 1 of 7
2. A robot must obey the orders given to it by human
beings except where such orders would conflict
with the First Law.
3. A robot must protect its own existence, as long as such protection
does not conflict with the First or Second Law.
7/29/2019 Introduction Robotics Lecture1
10/41
10/41
A definition of Robot
Robot Institute of America:
Robot is a reprogrammable, multifunctional manipulator
Introduction Robotics, lecture 1 of 7
es gne to move mater a , parts, too s, or spec a zedevices through variable programmed motions for the
performance of a variety of tasks.
7/29/2019 Introduction Robotics Lecture1
11/41
11/41
Chat with serious impact
George Devol and Joseph F. Engelberger at a cocktail party in 1956:
GD: 50 percent of the people who work in factories are really
putting and taking.
Introduction Robotics, lecture 1 of 7
JE: Why are machines made to produce only specific items?
GD: How about approaching manufacturing the other way around,
by designing machines that could put and take anything?
Unimation, Inc., the worlds first robot company, was formed
as a result of this discussion.
7/29/2019 Introduction Robotics Lecture1
12/41
12/41
And the impact was
1961: The first Unimate robot was installed in a plant of
General Motors in New Jersey.
1963: The first artificial robotic arm to be controlled by computer
Introduction Robotics, lecture 1 of 7
was designed at Rancho Los Amigos Hospital, California.
Number of industrial robots at the end of 2003:
Japan 350.000 Italy 50.000
Germany 112.700 France 26.000
North America 112.000 Spain 18,000
UK 14.000
7/29/2019 Introduction Robotics Lecture1
13/41
13/41
Nowadays robots
http://www.robotclips.com/
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
14/41
14/41
and what we aim at
household robots
service robots
Introduction Robotics, lecture 1 of 7
robots in dangerous environments
medical robotics
human-robot collaboration
7/29/2019 Introduction Robotics Lecture1
15/41
15/41
Ri id Motions and Homo enous
Introduction Robotics, lecture 1 of 7
Transformations
7/29/2019 Introduction Robotics Lecture1
16/41
16/41
Scope
Establish coordinate frames to represent positions and
orientations of rigid objects.
Determine transformations among various coordinate frames.
Introduction Robotics, lecture 1 of 7
Introduce concept of homogenous transformations to:
simultaneously describe the position and orientation of
one coordinate frame relative to another, perform coordinate transformations (represent various
quantities in different coordinate frames).
7/29/2019 Introduction Robotics Lecture1
17/41
17/41
Synthetic approach to represent locations
Coordinates are not assigned. Direct reasoning about geometric entities (e.g. points or lines):
x and are er endicular
Introduction Robotics, lecture 1 of 7
to each other,
v1 v2 defines another
vector,
v1 v2 is dot product and
defines scalar.
7/29/2019 Introduction Robotics Lecture1
18/41
18/41
Analytic approach to represent locations
Coordinates are assigned w.r.t. frames o0x0y0 and o1x1y1.
Analytic reasoning via algebraic manipulations.
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
19/41
19/41
Representing vectors
Free vectors are not constrained to be located at a particularpoint in space.
Introduction Robotics, lecture 1 of 7
v10 + v2
1 does not make
sense since o0x0y0 and o1x1y1 are not parallel.
7/29/2019 Introduction Robotics Lecture1
20/41
20/41
Representing rotations in coordinate frame 0
Rotation matrix
Introduction Robotics, lecture 1 of 7
xi and yi are the unit vectors in oixiyi
7/29/2019 Introduction Robotics Lecture1
21/41
21/41
Representing rotations in coordinate frame 1
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
22/41
22/41
Special orthogonal group
Set of n
n orthogonal matrices is SO(n): special orthogonalgroup of order n
Introduction Robotics, lecture 1 of 7
RT = R1
the columns (rows) of R are mutually orthogonal
each column (row) of R is a unit vector
det R = 1
7/29/2019 Introduction Robotics Lecture1
23/41
23/41
Representing rotations in 3D (1/4)
Each axis of the frame o1x1y1z1 is projected onto o0x0y0z0:
Introduction Robotics, lecture 1 of 7
R10 SO(3)
7/29/2019 Introduction Robotics Lecture1
24/41
24/41
Representing rotations in 3D (2/4)
Example: Frame o1x1y1z1 is obtained from frame o0x0y0z0by rotation through an angle about z0 axis.
Introduction Robotics, lecture 1 of 7
all other dot products are zero
7/29/2019 Introduction Robotics Lecture1
25/41
25/41
Representing rotations in 3D (3/4)
Basic rotation matrix about z-axis
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
26/41
26/41
Representing rotations in 3D (4/4)
Similarly, basic rotation matrices about x- and y-axes:
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
27/41
27/41
Rotational transformations (1/2)
pi: coordinates of p in oixiyizi
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
28/41
28/41
Rotational transformations (2/2)
Frame o1x1y1z1 isattached to the block.
In fi r o x
Introduction Robotics, lecture 1 of 7
coincides with o0x0y0z0.
7/29/2019 Introduction Robotics Lecture1
29/41
29/41
Similarity transformations (1/2)
If A is matrix re resentation of a linear transformation in o x y z
Matrix representation of a general linear transformation is mapped
from one frame to another using similarity transformation.
Introduction Robotics, lecture 1 of 7
and B is the representation of the same linear transformation in
o1x1y1z1, then
where R10 is the coordinate transformation between o1x1y1z1
and o0x0y0z0.
7/29/2019 Introduction Robotics Lecture1
30/41
30/41
Similarity transformations (2/2)
Example: Frames o0x0y0z0 and o1x1y1z1 are related by rotation:
Introduction Robotics, lecture 1 of 7
If A = Rz,relative to frame o0x0y0z0, then relative to frame o1x1y1z1we have
7/29/2019 Introduction Robotics Lecture1
31/41
31/41
Composition of rotations w.r.t. the Current Frame
Rotations with respect to the current frames:
Frame relative to which a rotation occurs is the current frame.
Introduction Robotics, lecture 1 of 7
Composition:
7/29/2019 Introduction Robotics Lecture1
32/41
32/41
We can select one fixed frame as the reference one.
Let o0x0y0z0 be the fixed frame.
Rotations with respect to o0x0y0z0 :
Composition of rotations w.r.t. the Fixed Frame
Introduction Robotics, lecture 1 of 7
Rotation R can be represented in the current frame o1x1y1z1:
Composition:
7/29/2019 Introduction Robotics Lecture1
33/41
33/41
Parameterization of rotations (1/4)
A rigid body has at most 3 rotational degrees of freedom.
Rotational transformation RSO(3) has 9 elements rij that
are not mutually independent since
Introduction Robotics, lecture 1 of 7
Given constraints define 6 independent equations with 9
unknowns; consequently, there are only 3 free variables.
7/29/2019 Introduction Robotics Lecture1
34/41
34/41
Parameterization of rotations (2/4)
Euler angles
Introduction Robotics, lecture 1 of 7
ZYZEuler angle transformation:
7/29/2019 Introduction Robotics Lecture1
35/41
35/41
Parameterization of rotations (3/4)
Roll, pitch, yaw angles
Introduction Robotics, lecture 1 of 7
XYZyaw-pitch-roll angle transformation:
7/29/2019 Introduction Robotics Lecture1
36/41
36/41
Parameterization of rotations (4/4)
Axis / angle representation
Introduction Robotics, lecture 1 of 7
Rk,represents rotation of
about k
7/29/2019 Introduction Robotics Lecture1
37/41
37/41
Rigid motions (1/2)
Rigid motion: a pure translation + a pure rotation. A rigid motion is an ordered pair (d, R) where dRRRR3 and RSO(3).
Introduction Robotics, lecture 1 of 7
SE(3) = RRRR3 SO(3)
7/29/2019 Introduction Robotics Lecture1
38/41
38/41
Rigid motions (2/2)
Introduction Robotics, lecture 1 of 7
7/29/2019 Introduction Robotics Lecture1
39/41
39/41
Homogenous transformations (1/2)
We have
Introduction Robotics, lecture 1 of 7
Note that
Consequently, rigid motion (d, R) can be described by matrix
representing homogenous transformation:
7/29/2019 Introduction Robotics Lecture1
40/41
40/41
Homogenous transformations (2/2)
Since R is orthogonal, we have
Introduction Robotics, lecture 1 of 7
We augment vectors p0
and p1
to get their homogenousrepresentations
and achieve matrix representation of coordinate transformation
7/29/2019 Introduction Robotics Lecture1
41/41
41/41
Basic homogenous transformations
Introduction Robotics, lecture 1 of 7