lecture 05: exponential coordinates & homogeneous

20
Lecture 05: Exponential Coordinates & Homogeneous Transformations Prof. Katie Driggs-Campbell Co-Teaching with Prof. Belabbas September 7, 2021

Upload: others

Post on 23-Jan-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lecture 05: Exponential Coordinates & Homogeneous

Lecture 05:Exponential Coordinates &

Homogeneous TransformationsProf. Katie Driggs-Campbell

Co-Teaching with Prof. Belabbas

September 7, 2021

Page 2: Lecture 05: Exponential Coordinates & Homogeneous

The First Friendly Robot

β€’ In 1923, Prof. Makoto Nishimura saw R.U.R., who became deeply troubled with the idea that humans would struggle against artificial life β€’ He was likely influenced by the increasingly popular automata,

mechanical figures that would exhibit autonomous behaviors

β€’ He feared that humanity would be β€œdestroyed by the pinnacle of its creation”

β€’ Nishimura decided to create a different kind of artificial human that would celebrate nature, called Gakutensokuβ€’ Nishimura refused to call his creation a robot. He named it

Gakutensoku, meaning β€œlearning from the rules of nature”

β€’ Disappeared after touring through Japan, China, and Korea

β€’ Gakutensoku had a longstanding impact on Japanese robotics: many robot makers believe that machines are not in opposition to nature but rather part of it

https://spectrum.ieee.org/robotics/humanoids/the-short-strange-life-of-the-first-friendly-robot

This enlightened deity would be revealed β€œseated on agilded pedestal with its eyes closed, seemingly lost inthought. In its left hand, it holds an electric light with acrystal-shaped bulb, which it slowly lifts into the air. … Thelightbulb illuminates, the giant opens its eyes, as if having arealization. Seemingly pleased with its eureka moment, itsmiles. Soon, it shifts its attention to a blank piece of paperlying in front of it and begins to write, eagerly recording itsnewfound insights.”

Page 3: Lecture 05: Exponential Coordinates & Homogeneous

Administrivia

β€’ Homework 2 is due Friday 9/10 at 8pm

β€’ Project Update 0 will be due 9/11 at midnight

Page 4: Lecture 05: Exponential Coordinates & Homogeneous

Angular Velocities

Page 5: Lecture 05: Exponential Coordinates & Homogeneous

Angular Velocities in Reference Frame

Page 6: Lecture 05: Exponential Coordinates & Homogeneous

Some useful properties and relations

Given any πœ” ∈ ℝ3 and 𝑅 ∈ 𝑆𝑂 3 , the following holds: 𝑅 πœ” π‘…βŠ€ = π‘…πœ”

Now recall: πœ”π‘  = αˆΆπ‘…π‘…βŠ€

If 𝑅 is 𝑅𝑠𝑏, we have that πœ”π‘  = π‘…πœ”π‘ ⇔ πœ”π‘ = π‘…βŠ€πœ”π‘ 

πœ”π‘ = π‘…βŠ€πœ”π‘  = π‘…βŠ€ αˆΆπ‘…π‘…βŠ€ 𝑅 = π‘…βŠ€ αˆΆπ‘… = π‘…βˆ’1 αˆΆπ‘…

This gives us: πœ”π‘  = αˆΆπ‘…π‘…βŠ€ and πœ”π‘ = π‘…βŠ€ αˆΆπ‘…

Page 7: Lecture 05: Exponential Coordinates & Homogeneous

Introducing Exponential Coordinates

Page 8: Lecture 05: Exponential Coordinates & Homogeneous

Recall the Matrix Exponential

If ሢπ‘₯ 𝑑 = 𝐴π‘₯ 𝑑 , π‘₯ 0 = π‘₯0, where π‘₯ ∈ ℝ𝑛, 𝐴 ∈ ℝ𝑛×𝑛, the solution to the ODE is:

π‘₯ 𝑑 = 𝑒𝐴𝑑π‘₯0The matrix exponential / the exponential function can be expanded:

𝑒𝐴𝑑 = 𝐼 + 𝐴𝑑 +1

2𝐴2𝑑2 +

1

3!𝐴3𝑑3 +β‹―

Properties:

1.𝑑

𝑑𝑑𝑒𝐴𝑑 = 𝐴𝑒𝐴𝑑 = 𝑒𝐴𝑑𝐴

2. If 𝐴 = π‘ƒπ·π‘ƒβˆ’1, then 𝑒𝐴𝑑 = π‘ƒπ‘’π·π‘‘π‘ƒβˆ’1

3. If 𝐴𝐡 = 𝐡𝐴, then 𝑒𝐴𝑒𝐡 = 𝑒𝐡𝑒𝐴 = 𝑒𝐴+𝐡

4. Invertible: 𝑒𝐴𝑑 βˆ’1 = π‘’βˆ’π΄π‘‘

Page 9: Lecture 05: Exponential Coordinates & Homogeneous

Exponential Coordinate Representationβ€’ Instead representing orientation as a rotation matrix, we introduce a three-

parameter representation: exponential coordinates

β€’ Recall: ΰ·πœ” rotation axis, πœƒ angle of rotation

β€’ Then ΰ·πœ”πœƒ ∈ ℝ3gives the exponential coordinate representation

β€’ A new interpretation for a frame coincident with 𝑠 :β€’ A rotation for 1 second around ΰ·πœ” at angular velocity πœƒ, then the resulting frame is 𝑅

β€’ A rotation for πœƒ seconds around ΰ·πœ” at angular velocity 1, then the resulting frame is 𝑅

Page 10: Lecture 05: Exponential Coordinates & Homogeneous

Exponential Coordinates of Rotations

Page 11: Lecture 05: Exponential Coordinates & Homogeneous

Matrix Logarithm

β€’ Given rotation matrix 𝑅, we need to take the logarithm to find the exponential coordinates:

β€’ If we expand Rodrigues formula:Rot ΰ·πœ”, πœƒ = 𝐼 + sin πœƒ ΰ·πœ” + 1 βˆ’ cos πœƒ ΰ·πœ” 2

Rot ΰ·πœ”, πœƒ

=

π‘πœƒ + ΰ·πœ”12(1 βˆ’ π‘πœƒ) ΰ·πœ”1 ΰ·πœ”2(1 βˆ’ π‘πœƒ) βˆ’ ΰ·πœ”3π‘ πœƒ ΰ·πœ”1 ΰ·πœ”3 1 βˆ’ π‘πœƒ + ΰ·πœ”2π‘ πœƒ

ΰ·πœ”1 ΰ·πœ”2(1 βˆ’ π‘πœƒ) + ΰ·πœ”3π‘ πœƒ π‘πœƒ + ΰ·πœ”22 1 βˆ’ π‘πœƒ ΰ·πœ”2 ΰ·πœ”3(1 βˆ’ π‘πœƒ) βˆ’ ΰ·πœ”1π‘ πœƒ

ΰ·πœ”1 ΰ·πœ”3(1 βˆ’ π‘πœƒ) βˆ’ ΰ·πœ”2π‘ πœƒ ΰ·πœ”2 ΰ·πœ”3(1 βˆ’ π‘πœƒ) + ΰ·πœ”1π‘ πœƒ π‘πœƒ + ΰ·πœ”32 1 βˆ’ π‘πœƒ

exp: ΰ·πœ” πœƒ ∈ π‘ π‘œ(3) β†’ 𝑅 ∈ 𝑆𝑂(3)

log: 𝑅 ∈ 𝑆𝑂(3) β†’ ΰ·πœ” πœƒ ∈ π‘ π‘œ(3)

Page 12: Lecture 05: Exponential Coordinates & Homogeneous

Matrix Logarithm Method

β€’ If we take the trace of the matrix, we can solve for πœƒ:β€’ π‘‘π‘Ÿ 𝑅 ≔ π‘Ÿ11 + π‘Ÿ22 + π‘Ÿ33 = 1 + 2 cos πœƒ

β€’ If we compute π‘…βŠ€ βˆ’ 𝑅, we get:β€’ π‘Ÿ32 βˆ’ π‘Ÿ23 = 2ΰ·πœ”1 sin πœƒ

β€’ π‘Ÿ13 βˆ’ π‘Ÿ31 = 2ΰ·πœ”2 sin πœƒ ΰ·πœ” =1

2 sin πœƒπ‘…βŠ€ βˆ’ 𝑅

β€’ π‘Ÿ21 βˆ’ π‘Ÿ12 = 2ΰ·πœ”3 sin πœƒ

β€’ But what if sin πœƒ = 0? (called singularities)β€’ If πœƒ = 2π‘˜πœ‹, we have rotated by 360 degrees

β€’ If πœƒ = (2π‘˜ + 1)πœ‹, then Rodrigues formula is 𝑅 = 𝐼 + 2 ΰ·πœ” 2, which gives:

ΰ·πœ”π‘– = Β±π‘Ÿπ‘–π‘–+1

2and 2ΰ·πœ”π‘– ΰ·πœ”π‘— = π‘Ÿπ‘–π‘— for 𝑖 β‰  𝑗

Page 13: Lecture 05: Exponential Coordinates & Homogeneous

Homogeneous Transformations: SE(3)

The special Euclidean group 𝑺𝑬(πŸ‘) is the set of 4 Γ— 4 matrices of the form:

𝑇 = 𝑇 𝑅, 𝑝 =𝑅 𝑝0 1

β€’ The inverse of 𝑇 is π‘‡βˆ’1 = π‘…βŠ€ βˆ’π‘…βŠ€π‘0 1

∈ 𝑆𝐸(3)

β€’ If 𝑇1 and 𝑇2 ∈ 𝑆𝐸(3), then 𝑇1𝑇2 ∈ 𝑆𝐸(3)

β€’ 𝑇 satisfies: 𝑇π‘₯ βˆ’ 𝑇𝑦 = π‘₯ βˆ’ 𝑦 and

𝑇π‘₯ βˆ’ 𝑇𝑧 ⊀ 𝑇𝑦 βˆ’ 𝑇𝑧 = π‘₯ βˆ’ 𝑧 ⊀ 𝑦 βˆ’ 𝑧

Page 14: Lecture 05: Exponential Coordinates & Homogeneous

Representing a configuration with SE(3)

Each frame can represent a body frame in a multi-link mechanism

As before:

π‘‡π‘Žπ‘π‘‡π‘π‘ = π‘‡π‘Žπ‘π‘‡π‘Žπ‘π‘£π‘ = π‘£π‘Ž

Page 15: Lecture 05: Exponential Coordinates & Homogeneous

Displacing Frames (1)

Page 16: Lecture 05: Exponential Coordinates & Homogeneous

Example Displacement (1)

Page 17: Lecture 05: Exponential Coordinates & Homogeneous

Displacing Frames (2)

Page 18: Lecture 05: Exponential Coordinates & Homogeneous

Example Displacement (2)

Page 19: Lecture 05: Exponential Coordinates & Homogeneous

Mobile arm exampleβ€’ Robot arm mounted on wheeled platform.

Camera fixed to ceiling.

β€’ {b} is body frame, {c} end-effector frame, {e} frame of object, and {a} is fixed frame.

β€’ We assume the camera position and orientation in {a} is given.

β€’ From camera measurements, you can evaluate the position and orientation of the body and the object in the camera frame.

β€’ Since we designed our robot and have joint-angle estimates, we can obtain the end-effector position and orientation in the body frame.

β€’ To pick up the object, we need the object position and orientation in the frame of our end-effector.

Page 20: Lecture 05: Exponential Coordinates & Homogeneous

Summary

β€’ Introduced exponential coordinates that allow us to parameterize rotations by the rotation axis ΰ·πœ” and the angle of rotation πœƒ

β€’ Walked through the matrix logarithm method, which tells us how to recover the exponential coordinates from a rotation matrix

β€’ Started discussing homogeneous transformations where we not only look at rotations, but also translations in a single operation