Cs i400 b659 intelligent robotics
This presentation is the property of its rightful owner.
Sponsored Links
1 / 42

CS I400/B659: Intelligent Robotics PowerPoint PPT Presentation


  • 78 Views
  • Uploaded on
  • Presentation posted in: General

CS I400/B659: Intelligent Robotics. Transformations and Matrix Algebra. Agenda. Principles, Ch. 3.5-8. Rigid Objects. Biological systems, virtual characters. q 2. q 1. Articulated Robot. Robot: usually a rigid articulated structure Geometric CAD models, relative to reference frames

Download Presentation

CS I400/B659: Intelligent Robotics

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Cs i400 b659 intelligent robotics

CS I400/B659: Intelligent Robotics

Transformations and Matrix Algebra


Agenda

Agenda

  • Principles, Ch. 3.5-8


Rigid objects

Rigid Objects


Biological systems virtual characters

Biological systems, virtual characters


Articulated robot

q2

q1

Articulated Robot

  • Robot: usually a rigid articulated structure

  • Geometric CAD models, relative to reference frames

  • A configuration specifies the placement of those frames


Rigid transformation in 2d

Rigid Transformation in 2D

workspace

Frame T0

robot

reference direction

q

ty

reference point

tx

Robot R0R2 given in reference frame T0

Located at configuration q = (tx,ty,q) with q [0,2p)


Rigid transformation in 2d1

Rigid Transformation in 2D

workspace

Frame T0

robot

reference direction

P

P

q

ty

reference point

tx

Robot R0R2 given in reference frame T0

Located at configuration q = (tx,ty,q) with q [0,2p)

Point P on the robot (e.g., a camera) has coordinates in frame T0.

What are the coordinates of P in the workspace?


Rigid transformation in 2d2

Rigid Transformation in 2D

  • Robot at configuration q = (tx,ty,q) with q [0,2p)

  • Point P on the robot (e.g., a camera) has coordinates in frame T0.

  • What are the coordinates of P in the workspace?

  • Think of 2 steps: 1) rotating about the origin point by angle q, then 2) translating the reference point to (tx,ty)


Rotations in 2d

Rotations in 2D

-sin q

  • X axis of T0 gets coords, Y axis gets

cos q

cos q

q

sin q


Rotations in 2d1

Rotations in 2D

-sin q

  • X axis of T0 gets coords, Y axis gets

  • gets rotated to coords

cos q

cos q

q

sin q

px

py


Rotations in 2d2

Rotations in 2D

-sin q

  • X axis of T0 gets coords, Y axis gets

  • gets rotated to coords

cos q

cos q

q

sin q

pxcosq -pysinq

px

pxsinq +pycosq

py


Dot product

Dot product

  • For any P=(px,py) rotated by any q, we have the new coordinates

  • We can express each element as a dot product:

  • Definition:

  • In 3D,

  • Key properties:

    • Symmetric

    • 0 only if and are perpendicular (orthogonal)


Properties of the dot product

Properties of the dot product

  • In 2D:

  • In 3D:

  • In n-D:

  • Key properties:

    • Symmetric

    • 0 only if and are perpendicular (orthogonal)


Properties of the dot product1

Properties of the dot product

  • In 2D:

  • In 3D:

  • In n-D:

  • Key properties:

    • Symmetric

    • 0 only if and are perpendicular (orthogonal)

If is a unit vector () then is the length of the projection of onto .


Properties of the dot product2

Properties of the dot product

  • In 2D:

  • In 3D:

  • In n-D:

  • Key properties:

    • Symmetric

    • 0 only if and are perpendicular (orthogonal)

If and are unit vectors with inner angle then =


Matrix vector multiplication

Matrix-vector multiplication

  • For any P=(px,py) rotated by any q, we have the new coordinates

  • We can express this as a matrix-vector product:


Matrix vector multiplication1

Matrix-vector multiplication

  • For any P=(px,py) rotated by any q, we have the new coordinates

  • We can express this as a matrix-vector product:

  • Or, for A a 2x2 table of numbers

  • Each entry of is the dot product between the corresponding row of A and


Matrix vector multiplication2

Matrix-vector multiplication

  • For any P=(px,py) rotated by any q, we have the new coordinates

  • We can express this as a matrix-vector product:

  • Or, for A a 2x2 table of numbers

  • Each entry of is the dot product between the corresponding row of A and


Matrix vector multiplication3

Matrix-vector multiplication

  • For any P=(px,py) rotated by any q, we have the new coordinates

  • We can express this as a matrix-vector product:

  • Or, for A a 2x2 table of numbers

  • Each entry of is the dot product between the corresponding row of A and


Matrix vector product examples

Matrix-vector product examples


General equations

General equations

  • A has dimensions m x n, has m entries, has n entries

  • for each i=1,…,m


Matrix vector product examples1

Matrix-vector product examples


Multiple rotations

Multiple rotations

  • Define the 2D rotation matrix

  • We know that the new coordinates of a point rotated by is given by

  • What if we rotate again by ? What are the new coordinates ?


Multiple rotations1

Multiple rotations

  • Define the 2D rotation matrix

  • We know that the new coordinates of a point rotated by is given by

  • What if we rotate again by ? What are the new coordinates ?


Multiple rotations2

Multiple rotations

  • Define the 2D rotation matrix

  • We know that the new coordinates of a point rotated by is given by

  • What if we rotate again by ? What are the new coordinates ?


Multiple rotations3

Multiple rotations

  • Define the 2D rotation matrix

  • We know that the new coordinates of a point rotated by is given by

  • What if we rotate again by ? What are the new coordinates ?

Is it possible to define matrix-matrix multiplication so that ?


Matrix matrix multiplication

Matrix-matrix multiplication

  • somust be 2x2


Matrix matrix multiplication1

Matrix-matrix multiplication

  • somust be 2x2

Row 1

Column 1

Entry (1,1)


Matrix matrix multiplication2

Matrix-matrix multiplication

  • somust be 2x2

Row 1

Column 2

Entry (1,2)


Matrix matrix multiplication3

Matrix-matrix multiplication

  • somust be 2x2

Column 1

Entry (2,1)

Row 2


Matrix matrix multiplication4

Matrix-matrix multiplication

  • somust be 2x2

Column 2

Entry (2,2)

Row 2


Matrix matrix multiplication5

Matrix-matrix multiplication

  • somust be 2x2


Matrix matrix multiplication6

Matrix-matrix multiplication

  • somust be 2x2

  • Verify that


Rotation matrix matrix multiplication

Rotation matrix-matrix multiplication

  • somust be 2x2


Rotation matrix matrix multiplication1

Rotation matrix-matrix multiplication

  • somust be 2x2


Rotation matrix matrix multiplication2

Rotation matrix-matrix multiplication

  • somust be 2x2

  • So,


General definition

General definition

  • If A and B are m x p and p x n matrices, respectively, then the matrix-matrix product is given by the m x n matrix C with entries


Other fun facts

Other Fun Facts

  • An nxnidentity matrix has 1’s on its diagonals and 0s everywhere else

    • for all vectors

    • for all nxm matrices

    • for all mxnmatrices

  • If A and B are square matrices such that , then B is called the inverse of A (and A is the inverse of B)

    • Not all matrices are invertible

  • The transpose of a matrix mxnmatrix is the nxm matrix formed swapping its rows and columns. It is denoted .

    • i.e.,


Consequence rotation inverse

Consequence: rotation inverse

  • Since…

  • (the identity matrix)

  • But

  • …so a rotation matrix’s inverse is its transpose.


Rigid transformation in 2d3

q = (tx,ty,q) with q [0,2p)

Robot R0R2 given in reference frame T0

What’s the new robot Rq?{Tq(x,y) | (x,y)  R0}

Define rigid transformation Tq(x,y) : R2 R2

Rigid Transformation in 2D

cos θ -sin θ

sin θ cos θ

x

y

tx

ty

Tq(x,y) =

+

2D rotation matrix

Affine translation


Note transforming points vs directional quantities

Rigid transform q = (tx,ty,q)

A point with coordinates (x,y) in T0 undergoes rotation and affine translation

Directional quantities (e.g., velocity, force) are not affected by the affine translation!

Note: transforming points vs directional quantities

cos θ -sin θ

sin θ cos θ

x

y

tx

ty

Tq(x,y) =

+

cos θ -sin θ

sin θ cos θ

vx

vy

Rq(vx,vy) =


Next lecture

Next Lecture

  • Optional: A Mathematical Introduction to Robotic Manipulation, Ch. 2.1-3

    • http://www.cds.caltech.edu/~murray/mlswiki/?title=First_edition


  • Login