Lecture Note 3: Rotational Motion

Size: px
Start display at page:

Download "Lecture Note 3: Rotational Motion"

Transcription

1 ECE5463: Introduction to Robotics Lecture Note 3: Rotational Motion Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 1 / 30

2 Outline Mathematics of Rigid Body Transformation Rotation Matrix and SO(3) Euler Angles and Euler-Like Parameterizations Exponential Coordinate of SO(3) Quaternion Representation of Rotation Outline Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 2 / 30

3 Rigid Body Transformation Object (Body) in R 3 : a collection of points, represented by a subset O R 3 Transformation of a body: A single mapping g : O R 3 which maps the coordinates of points in the body from their initial to final configurations. Transformation on points induce an action on vectors in a natural way. Given a transformation g : O R 3,define ĝ(v) g(q) g(p), where v = q p - Note: ĝ has a different domain than g Rigid Body Transformation Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 3 / 30

4 Rigid Body Transformation Rigid Body Transformation: A mapping g : R 3 R 3 is called a rigid body transformation if it satisfies the following two properties 1. Length preserved: g(q) g(p) = q p, forallp, q R 3 2. Cross product is preserved: ĝ(v w) =ĝ(v) ĝ(w), forallv, w R 3. Implications: - Inner product is preserved: - Angles between vectors are preserved ĝ(v) T ĝ(w) =v T w, for all v, w R 3 - Orthogonal vectors are transformed to orthogonal vectors - Right-handed coordinate frames are transformed to right-handed coordinate frames Rigid Body Transformation Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 4 / 30

5 Outline Mathematics of Rigid Body Transformation Rotation Matrix and SO(3) Euler Angles and Euler-Like Parameterizations Exponential Coordinate of SO(3) Quaternion Representation of Rotation Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 5 / 30

6 Representation of Orientation ˆx b ẑ b ẑ s p ŷ b ŷ s ˆx s Basic Reference Frames: - Fixed (or Space) Frame: {s} = {ˆx s, ŷ s, ẑ s } - Body Frame:{b} ={ˆx b, ŷ b, ẑ b } Let x sb, y sb and z sb bethecoordinateofˆx b, ŷ b, ẑ b in frame {s} Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 6 / 30

7 Rotation Matrix Let R sb = [ x sb y sb z sb ] R sb constructed above is called a rotation matrix. Weknow: - R T sbr sb = I - det(r sb )=1 Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 7 / 30

8 Special Orthogonal Group Special Orthogonal Group: Space of Rotation Matrices in R n is defined as SO(n) ={R R n n : RR T = I,det(R) =1} SO(n) is a group. We are primarily interested in SO(3) and SO(2), rotation groups of R 3 and R 2, respectively. Group is a set G, together with an operation, satisfying the following group axioms: - Closure: a G, b G a b G - Associativity: (a b) c = a (b c), a, b, c G - Identity element: e G such that e a = a, foralla G. - Inverse element: For each a G, thereisab G such that a b = b a = e, where e is the identity element. Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 8 / 30

9 Use of Rotation Matrix Representing an orientation: R ab = [ x ab y ab z ab ] Changingg the reference frame: - p a = R ab p b - R ac = R ab R bc Rotating a vector or a frame: - Theorem (Euler):Any orientation R SO(3) is equivalent to a rotation about a fixed axis ˆω R 3 through an angle θ [0, 2π) R =Rot(ˆω, θ) Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 9 / 30

10

11 Pre-multiplication vs. Post-multiplication Given R SO(3), we can always find ˆω and θ such that R =Rot(ˆω, θ). Premultiplying by R yields a rotation about an axis ˆω considered in the fixed frame; Postmultiplying by R yields a rotation about ˆω considered in the body frame ẑ 90 ẑ ŷ ˆx ŷ ˆx R =Rot(ẑ, 90 ) ẑ s 90 ˆx b ˆx s ẑ s {s} ŷ s ŷ b ẑ b ˆx b {b} R sb = RR sb fixed frame rotation ẑ b 90 R sb = R sb R body frame rotation ŷ b ˆx b ẑ b {b } {b } ŷ b ẑ b Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 10 / 30

12

13 Coordinate System for SO(3) How to parameterize the elements in SO(3)? The definition of SO(3) corresponds to implicit representation: R R 3 3,RR T = I,det(R) = independent equations with 9 unknowns - Dimension of SO(3) is 3. Rotation Matrix and SO(3) Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 11 / 30

14 Outline Mathematics of Rigid Body Transformation Rotation Matrix and SO(3) Euler Angles and Euler-Like Parameterizations Exponential Coordinate of SO(3) Quaternion Representation of Rotation Euler Angles Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 12 / 30

15 Euler Angle Representation of Rotation z 0, z a z a φ z b z b, z 1 ψ y 1 y a y a, y b y b x 0 y 0 x x θ a a x b x b x 1 Euler angle representation: - Start with {b} coincident with {s} - Rotate {b} about ẑ b by an angle α, then rotate about the (new) ŷ b axis by β, and then rotate about the (new) ẑ b axis by γ. This yields a net orientation R sb (α, β, γ) parameterized by the ZYZ angles (α, β, γ) - R sb (α, β, γ) =R z (α)r y (β)r z (γ) Euler Angles Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 13 / 30

16 Other Euler-Like Parameterizations Other types of Euler angle parameterization can be devised using different ordered sets of rotation axes Common choices include: - ZYX Euler angles: also called Fick angles or yaw, pitch and roll angles - YZX Euler angles (Helmholtz angles) z 0 Roll Yaw y 0 Pitch x 0 Euler Angles Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 14 / 30

17 Examples of Euler-Like Representations Euler Angles Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 15 / 30

18 Outline Mathematics of Rigid Body Transformation Rotation Matrix and SO(3) Euler Angles and Euler-Like Parameterizations Exponential Coordinate of SO(3) Quaternion Representation of Rotation Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 16 / 30

19 Towards Exponential Coordinate of SO(3) Recall the polar coordinate system of the complex plane: - Every complex number z = x + jy = ρe jφ - Cartesian coordinate (x, y) polar coorindate (ρ, φ) - For some applications, the polar coordinate is preferred due to its geometric meaning. For any rotation matrix R SO(3), it turned out R = e [ˆω]θ - ˆω: unit vector representing the axis of rotation - θ: the degree of rotation - ˆωθ is called the exponential coordinate for SO(3). Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 17 / 30

20 Skew Symmetric Matrices Recall that cross product is a special linear transformation. n For any ω R n, there is a matrix [ω] R n n such that ω p =[ω]p ω 1 0 ω 3 ω 2 ω = ω 2 [ω] = ω 3 0 ω 1 ω 3 ω 2 ω 1 0 Note that [ω] = [ω] T skew symmetric [ω] is called a skew-symmetric matrix representation of the vector ω The set of skew-symmetric matrices in: so(n) {S R n n : S T = S} We are interested in case n =2, 3 Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 18 / 30

21 Find Rotation Rot(ω, θ) via Differential Equation Consider a point p with coordinate p 0 at time t =0 Rotate the point with constant unit velocity around fixed axis ω. Themotion is described by ṗ(t) =ω p(t) =[ω]p(t), with p(0) = p 0 This is a linear ODE with solution: p(t) =e [ˆω]t p 0 Note p(θ) =Rot(ω, θ)p 0, therefore Rot(ω, θ) =e [ω]θ Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 19 / 30

22 Find Rotation Rot(ω, θ) via Differential Equation Exponential Map: By definition e [ω]θ = I + θ[ω]+ θ2 2! [ω]2 + θ3 3! [ω]3 + Rodrigues Formula: Givenany[ω] so(3), wehave e [ω]θ = I +[ω]sin(θ)+[ω] 2 (1 cos(θ)) Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 20 / 30

23 Find Rotation Rot(ω, θ) via Differential Equation Proposition: For any unit vector [ˆω] so(3) and any θ R, e [ˆω]θ SO(3) Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 21 / 30

24 Examples of Forward Exponential Map Rotation matrix R x (θ) (corresponding to ˆxθ) Rotation matrix corresponding to (1, 0, 1) T Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 22 / 30

25 Logarithm of Rotations Proposition: For any R SO(3), there exists ˆω R 3 with ˆω =1and θ R such that R = e [ˆω]θ - If R = I, thenθ =0and ˆω is undefined. - If tr(r) = 1, thenθ = π and set ˆω equal to one of the following 1 2(1 + r33 ) r 13 r 23 1+r 33, 1 2(1 + r22 ) r 12 1+r 22 r 32, 1 2(1 + r11 ) 1+r 11 r 21 r 31 - Otherwise, θ =cos 1 ( 1 2 (tr(r) 1)) [0,π) and [ˆω] = 1 2sin(θ) (R RT ) Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 23 / 30

26 Exponential Coordinate of SO(3) exp: [ˆω]θ so(3) R SO(3) log: R SO(3) [ˆω]θ so(3) The vector ˆωθ is called the exponential coordinate for R The exponential coordinates are also called the canonical coordinates of the rotation group SO(3) Exponential Coordinate Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 24 / 30

27 Outline Mathematics of Rigid Body Transformation Rotation Matrix and SO(3) Euler Angles and Euler-Like Parameterizations Exponential Coordinate of SO(3) Quaternion Representation of Rotation Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 25 / 30

28 Quaternions Quaternions generalize complex numbers and can be used to effectively represent rotations in R 3. A quaternion is a vector quantity of the following form: q = q 0 + q 1 i + q 2 j + q 3 k where q 0 is the scalar ( real ) component and q =(q 1,q 2,q 3 ) is the vector ( imaginary ) component. Addition and multiplication operations: - p + q =(p 0 + q 0 )+(p 1 + q 1 )i +(p 2 + q 2 )j +(p 3 + q 3 )k - i 2 = j 2 = k 2 = ijk = 1 - ij = k = ji, jk = i = kj, ki = j = ik In scalar-vector form, product of p =(p 0, p) and q =(q 0, q) is given by pq = ( p 0 q 0 p T q, p 0 q + q 0 p + p q ) Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 26 / 30

29 Conjugate, Norm, and Inverse Given a quaternion q =(q 0, q): - Conjugate: q =(q 0, q) - Norm: q 2 = qq = q q = q q q q Inverse: q 1 q q 2 Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 27 / 30

30 Quaternion Representation of Rotation For v R 3, we can associate it with a 0 scalar component to construct a purely imaginary quaternion: v =(0, v) Each quaternion q =(q 0, q) defines an operation on a vector v R 3 : L q ( v) =Im(q vqm )=(q 0 2 q 2 ) v +2( q T v) q +2q 0 ( q v) Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 28 / 30

31 Quaternion Representation of Rotation Unit quaternion: If q =1, we can always find θ [0, 2π) and unit vector ˆω R 3 such that: q = ( cos ( ( θ 2), ˆω sin θ )) 2 In this case, L q ( v) is the vector obtained by rotating v R 3 about the axis ˆω for θ degree. Given a unit quaternion q =(q 0, q), we can extract the rotation axis/angle by: θ =2cos 1 (q 0 ), ˆω = { q sin(θ/2) if θ 0 0 otherwise L q ( v) rotates v about ˆω for θ degree. Quaternion provides global parameterization of SO(3), which does not suffer from singularities Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 29 / 30

32 Examples of Quaternions Quaternions Lecture 3 (ECE5463 Sp18) Wei Zhang(OSU) 30 / 30

33

34

CS612 - Algorithms in Bioinformatics

CS612 - Algorithms in Bioinformatics Fall 2017 Structural Manipulation November 22, 2017 Rapid Structural Analysis Methods Emergence of large structural databases which do not allow manual (visual) analysis and require efficient 3-D search

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body

More information

ME 597: AUTONOMOUS MOBILE ROBOTICS SECTION 2 COORDINATE TRANSFORMS. Prof. Steven Waslander

ME 597: AUTONOMOUS MOBILE ROBOTICS SECTION 2 COORDINATE TRANSFORMS. Prof. Steven Waslander ME 597: AUTONOMOUS MOILE ROOTICS SECTION 2 COORDINATE TRANSFORMS Prof. Steven Waslander OUTLINE Coordinate Frames and Transforms Rotation Matrices Euler Angles Quaternions Homogeneous Transforms 2 COORDINATE

More information

Transformations: 2D Transforms

Transformations: 2D Transforms 1. Translation Transformations: 2D Transforms Relocation of point WRT frame Given P = (x, y), translation T (dx, dy) Then P (x, y ) = T (dx, dy) P, where x = x + dx, y = y + dy Using matrix representation

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 420 Computer Graphics Lecture 20 and Rotations Rotations Motion Capture [Angel Ch. 3.14] Rotations Very important in computer animation and robotics Joint angles, rigid body orientations, camera parameters

More information

Transformation. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Transformation. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON S RBE 550 Transformation Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Announcement Project

More information

Quaternions and Rotations

Quaternions and Rotations CSCI 480 Computer Graphics Lecture 20 and Rotations April 6, 2011 Jernej Barbic Rotations Motion Capture [Ch. 4.12] University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s11/ 1 Rotations

More information

Quaternions & Rotation in 3D Space

Quaternions & Rotation in 3D Space Quaternions & Rotation in 3D Space 1 Overview Quaternions: definition Quaternion properties Quaternions and rotation matrices Quaternion-rotation matrices relationship Spherical linear interpolation Concluding

More information

Quaternions and Exponentials

Quaternions and Exponentials Quaternions and Exponentials Michael Kazhdan (601.457/657) HB A.6 FvDFH 21.1.3 Announcements OpenGL review II: Today at 9:00pm, Malone 228 This week's graphics reading seminar: Today 2:00-3:00pm, my office

More information

12.1 Quaternions and Rotations

12.1 Quaternions and Rotations Fall 2015 CSCI 420 Computer Graphics 12.1 Quaternions and Rotations Hao Li http://cs420.hao-li.com 1 Rotations Very important in computer animation and robotics Joint angles, rigid body orientations, camera

More information

Lecture Note 2: Configuration Space

Lecture Note 2: Configuration Space ECE5463: Introduction to Robotics Lecture Note 2: Configuration Space Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 2 (ECE5463

More information

Visual Recognition: Image Formation

Visual Recognition: Image Formation Visual Recognition: Image Formation Raquel Urtasun TTI Chicago Jan 5, 2012 Raquel Urtasun (TTI-C) Visual Recognition Jan 5, 2012 1 / 61 Today s lecture... Fundamentals of image formation You should know

More information

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala)

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala) 3D Transformations CS 4620 Lecture 10 1 Translation 2 Scaling 3 Rotation about z axis 4 Rotation about x axis 5 Rotation about y axis 6 Properties of Matrices Translations: linear part is the identity

More information

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11 3D Transformations CS 4620 Lecture 11 1 Announcements A2 due tomorrow Demos on Monday Please sign up for a slot Post on piazza 2 Translation 3 Scaling 4 Rotation about z axis 5 Rotation about x axis 6

More information

CMSC 425: Lecture 6 Affine Transformations and Rotations

CMSC 425: Lecture 6 Affine Transformations and Rotations CMSC 45: Lecture 6 Affine Transformations and Rotations Affine Transformations: So far we have been stepping through the basic elements of geometric programming. We have discussed points, vectors, and

More information

Lecture «Robot Dynamics»: Kinematics 2

Lecture «Robot Dynamics»: Kinematics 2 Lecture «Robot Dynamics»: Kinematics 2 151-851- V lecture: CAB G11 Tuesday 1:15 12:, every week exercise: HG G1 Wednesday 8:15 1:, according to schedule (about every 2nd week) office hour: LEE H33 Friday

More information

Quaternion Rotations AUI Course Denbigh Starkey

Quaternion Rotations AUI Course Denbigh Starkey Major points of these notes: Quaternion Rotations AUI Course Denbigh Starkey. What I will and won t be doing. Definition of a quaternion and notation 3 3. Using quaternions to rotate any point around an

More information

Rotation and Orientation: Fundamentals. Perelyaev Sergei VARNA, 2011

Rotation and Orientation: Fundamentals. Perelyaev Sergei VARNA, 2011 Rotation and Orientation: Fundamentals Perelyaev Sergei VARNA, 0 What is Rotation? Not intuitive Formal definitions are also confusing Many different ways to describe Rotation (direction cosine) matri

More information

Attitude Representation

Attitude Representation Attitude Representation Basilio Bona DAUIN Politecnico di Torino Semester 1, 015-16 B. Bona (DAUIN) Attitude Representation Semester 1, 015-16 1 / 3 Mathematical preliminaries A 3D rotation matrix R =

More information

CS354 Computer Graphics Rotations and Quaternions

CS354 Computer Graphics Rotations and Quaternions Slide Credit: Don Fussell CS354 Computer Graphics Rotations and Quaternions Qixing Huang April 4th 2018 Orientation Position and Orientation The position of an object can be represented as a translation

More information

Transformations. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Transformations. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Transformations Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Angel: Interactive Computer Graphics 4E Addison-Wesley 25 1 Objectives

More information

Orientation & Quaternions

Orientation & Quaternions Orientation & Quaternions Orientation Position and Orientation The position of an object can be represented as a translation of the object from the origin The orientation of an object can be represented

More information

CS770/870 Spring 2017 Quaternions

CS770/870 Spring 2017 Quaternions CS770/870 Spring 2017 Quaternions Primary resources used in preparing these notes: 1. van Osten, 3D Game Engine Programming: Understanding Quaternions, https://www.3dgep.com/understanding-quaternions 2.

More information

MEAM 620: HW 1. Sachin Chitta Assigned: January 10, 2007 Due: January 22, January 10, 2007

MEAM 620: HW 1. Sachin Chitta Assigned: January 10, 2007 Due: January 22, January 10, 2007 MEAM 620: HW 1 Sachin Chitta (sachinc@grasp.upenn.edu) Assigned: January 10, 2007 Due: January 22, 2006 January 10, 2007 1: MATLAB Programming assignment Using MATLAB, write the following functions: 1.

More information

METR 4202: Advanced Control & Robotics

METR 4202: Advanced Control & Robotics Position & Orientation & State t home with Homogenous Transformations METR 4202: dvanced Control & Robotics Drs Surya Singh, Paul Pounds, and Hanna Kurniawati Lecture # 2 July 30, 2012 metr4202@itee.uq.edu.au

More information

Animating orientation. CS 448D: Character Animation Prof. Vladlen Koltun Stanford University

Animating orientation. CS 448D: Character Animation Prof. Vladlen Koltun Stanford University Animating orientation CS 448D: Character Animation Prof. Vladlen Koltun Stanford University Orientation in the plane θ (cos θ, sin θ) ) R θ ( x y = sin θ ( cos θ sin θ )( x y ) cos θ Refresher: Homogenous

More information

MTRX4700 Experimental Robotics

MTRX4700 Experimental Robotics MTRX 4700 : Experimental Robotics Lecture 2 Stefan B. Williams Slide 1 Course Outline Week Date Content Labs Due Dates 1 5 Mar Introduction, history & philosophy of robotics 2 12 Mar Robot kinematics &

More information

Autonomous Navigation for Flying Robots

Autonomous Navigation for Flying Robots Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 3.1: 3D Geometry Jürgen Sturm Technische Universität München Points in 3D 3D point Augmented vector Homogeneous

More information

Quaternion properties: addition. Introduction to quaternions. Quaternion properties: multiplication. Derivation of multiplication

Quaternion properties: addition. Introduction to quaternions. Quaternion properties: multiplication. Derivation of multiplication Introduction to quaternions Definition: A quaternion q consists of a scalar part s, s, and a vector part v ( xyz,,, v 3 : q where, [ s, v q [ s, ( xyz,, q s+ ix + jy + kz i 2 j 2 k 2 1 ij ji k k Quaternion

More information

Inertial Measurement Units II!

Inertial Measurement Units II! ! Inertial Measurement Units II! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 10! stanford.edu/class/ee267/!! wikipedia! Polynesian Migration! Lecture Overview! short review of

More information

Visualizing Quaternions

Visualizing Quaternions Visualizing Quaternions Andrew J. Hanson Computer Science Department Indiana University Siggraph 1 Tutorial 1 GRAND PLAN I: Fundamentals of Quaternions II: Visualizing Quaternion Geometry III: Quaternion

More information

θ x Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing Position & Orientation & State 2 30-Jul

θ x Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing Position & Orientation & State 2 30-Jul θ x 2018 School of Information Technology and Electrical Engineering at the University of Queensland Lecture Schedule Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing Position

More information

CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES

CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES YINGYING REN Abstract. In this paper, the applications of homogeneous coordinates are discussed to obtain an efficient model

More information

Introduction to quaternions. Mathematics. Operations

Introduction to quaternions. Mathematics. Operations Introduction to quaternions Topics: Definition Mathematics Operations Euler Angles (optional) intro to quaternions 1 noel.h.hughes@gmail.com Euler's Theorem y y Angle! rotation follows right hand rule

More information

Homogeneous coordinates, lines, screws and twists

Homogeneous coordinates, lines, screws and twists Homogeneous coordinates, lines, screws and twists In lecture 1 of module 2, a brief mention was made of homogeneous coordinates, lines in R 3, screws and twists to describe the general motion of a rigid

More information

Exponential Maps for Computer Vision

Exponential Maps for Computer Vision Exponential Maps for Computer Vision Nick Birnie School of Informatics University of Edinburgh 1 Introduction In computer vision, the exponential map is the natural generalisation of the ordinary exponential

More information

Kinematic Model of Robot Manipulators

Kinematic Model of Robot Manipulators Kinematic Model of Robot Manipulators Claudio Melchiorri Dipartimento di Ingegneria dell Energia Elettrica e dell Informazione (DEI) Università di Bologna email: claudio.melchiorri@unibo.it C. Melchiorri

More information

CSE 252B: Computer Vision II

CSE 252B: Computer Vision II CSE 252B: Computer Vision II Lecturer: Serge Belongie Scribe: Sameer Agarwal LECTURE 1 Image Formation 1.1. The geometry of image formation We begin by considering the process of image formation when a

More information

To do this the end effector of the robot must be correctly positioned relative to the work piece.

To do this the end effector of the robot must be correctly positioned relative to the work piece. Spatial Descriptions and Transformations typical robotic task is to grasp a work piece supplied by a conveyer belt or similar mechanism in an automated manufacturing environment, transfer it to a new position

More information

Centre for Autonomous Systems

Centre for Autonomous Systems Robot Henrik I Centre for Autonomous Systems Kungl Tekniska Högskolan hic@kth.se 27th April 2005 Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

More information

AH Matrices.notebook November 28, 2016

AH Matrices.notebook November 28, 2016 Matrices Numbers are put into arrays to help with multiplication, division etc. A Matrix (matrices pl.) is a rectangular array of numbers arranged in rows and columns. Matrices If there are m rows and

More information

Rotation parameters for model building and stable parameter inversion in orthorhombic media Cintia Lapilli* and Paul J. Fowler, WesternGeco.

Rotation parameters for model building and stable parameter inversion in orthorhombic media Cintia Lapilli* and Paul J. Fowler, WesternGeco. otation parameters for model building and stable parameter inversion in orthorhombic media Cintia Lapilli* and Paul J Fowler, WesternGeco Summary Symmetry groups commonly used to describe seismic anisotropy

More information

Aalto CS-C3100 Computer Graphics, Fall 2016

Aalto CS-C3100 Computer Graphics, Fall 2016 Aalto CS-C3100 Computer Graphics, Fall 2016 Representation and Interpolation of Wikipedia user Blutfink Rotations...or, adventures on the 4D unit sphere Jaakko Lehtinen with lots of slides from Frédo Durand

More information

CS 445 / 645 Introduction to Computer Graphics. Lecture 21 Representing Rotations

CS 445 / 645 Introduction to Computer Graphics. Lecture 21 Representing Rotations CS 445 / 645 Introduction to Computer Graphics Lecture 21 Representing Rotations Parameterizing Rotations Straightforward in 2D A scalar, θ, represents rotation in plane More complicated in 3D Three scalars

More information

3D Kinematics. Consists of two parts

3D Kinematics. Consists of two parts D Kinematics Consists of two parts D rotation D translation The same as D D rotation is more complicated than D rotation (restricted to z-ais) Net, we will discuss the treatment for spatial (D) rotation

More information

Lecture Note 2: Configuration Space

Lecture Note 2: Configuration Space ECE5463: Introduction to Robotics Lecture Note 2: Configuration Space Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 2 (ECE5463

More information

Camera Projection Models We will introduce different camera projection models that relate the location of an image point to the coordinates of the

Camera Projection Models We will introduce different camera projection models that relate the location of an image point to the coordinates of the Camera Projection Models We will introduce different camera projection models that relate the location of an image point to the coordinates of the corresponding 3D points. The projection models include:

More information

a a= a a =a a 1 =1 Division turned out to be equivalent to multiplication: a b= a b =a 1 b

a a= a a =a a 1 =1 Division turned out to be equivalent to multiplication: a b= a b =a 1 b MATH 245 Extra Effort ( points) My assistant read through my first draft, got half a page in, and skipped to the end. So I will save you the flipping. Here is the assignment. Do just one of them. All the

More information

CMPUT 412 Motion Control Wheeled robots. Csaba Szepesvári University of Alberta

CMPUT 412 Motion Control Wheeled robots. Csaba Szepesvári University of Alberta CMPUT 412 Motion Control Wheeled robots Csaba Szepesvári University of Alberta 1 Motion Control (wheeled robots) Requirements Kinematic/dynamic model of the robot Model of the interaction between the wheel

More information

Geometric Transformations

Geometric Transformations Geometric Transformations CS 4620 Lecture 9 2017 Steve Marschner 1 A little quick math background Notation for sets, functions, mappings Linear and affine transformations Matrices Matrix-vector multiplication

More information

An idea which can be used once is a trick. If it can be used more than once it becomes a method

An idea which can be used once is a trick. If it can be used more than once it becomes a method An idea which can be used once is a trick. If it can be used more than once it becomes a method - George Polya and Gabor Szego University of Texas at Arlington Rigid Body Transformations & Generalized

More information

METR Robotics Tutorial 2 Week 3: Homogeneous Coordinates SOLUTIONS & COMMENTARY

METR Robotics Tutorial 2 Week 3: Homogeneous Coordinates SOLUTIONS & COMMENTARY METR4202 -- Robotics Tutorial 2 Week 3: Homogeneous Coordinates SOLUTIONS & COMMENTARY Questions 1. Calculate the homogeneous transformation matrix A BT given the [20 points] translations ( A P B ) and

More information

Today. Today. Introduction. Matrices. Matrices. Computergrafik. Transformations & matrices Introduction Matrices

Today. Today. Introduction. Matrices. Matrices. Computergrafik. Transformations & matrices Introduction Matrices Computergrafik Matthias Zwicker Universität Bern Herbst 2008 Today Transformations & matrices Introduction Matrices Homogeneous Affine transformations Concatenating transformations Change of Common coordinate

More information

Visualizing Quaternions

Visualizing Quaternions Visualizing Quaternions Andrew J. Hanson Computer Science Department Indiana University Siggraph 25 Tutorial OUTLINE I: (45min) Twisting Belts, Rolling Balls, and Locking Gimbals: Explaining Rotation Sequences

More information

3-D D Euclidean Space - Vectors

3-D D Euclidean Space - Vectors 3-D D Euclidean Space - Vectors Rigid Body Motion and Image Formation A free vector is defined by a pair of points : Jana Kosecka http://cs.gmu.edu/~kosecka/cs682.html Coordinates of the vector : 3D Rotation

More information

Lecture Note 6: Forward Kinematics

Lecture Note 6: Forward Kinematics ECE5463: Introduction to Robotics Lecture Note 6: Forward Kinematics Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 6 (ECE5463

More information

Kinematics of Closed Chains

Kinematics of Closed Chains Chapter 7 Kinematics of Closed Chains Any kinematic chain that contains one or more loops is called a closed chain. Several examples of closed chains were encountered in Chapter 2, from the planar four-bar

More information

Fundamentals of Computer Animation

Fundamentals of Computer Animation Fundamentals of Computer Animation Orientation and Rotation University of Calgary GraphicsJungle Project CPSC 587 5 page Motivation Finding the most natural and compact way to present rotation and orientations

More information

Exercise 1: Kinematics of the ABB IRB 120

Exercise 1: Kinematics of the ABB IRB 120 Exercise 1: Kinematics of the ABB IRB 120 Marco Hutter, Michael Blösch, Dario Bellicoso, Samuel Bachmann October 2, 2015 Abstract In this exercise you learn how to calculate the forward and inverse kinematics

More information

Motion Control (wheeled robots)

Motion Control (wheeled robots) Motion Control (wheeled robots) Requirements for Motion Control Kinematic / dynamic model of the robot Model of the interaction between the wheel and the ground Definition of required motion -> speed control,

More information

Graphics and Interaction Transformation geometry and homogeneous coordinates

Graphics and Interaction Transformation geometry and homogeneous coordinates 433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Search Spaces I. Before we get started... ME/CS 132b Advanced Robotics: Navigation and Perception 4/05/2011

Search Spaces I. Before we get started... ME/CS 132b Advanced Robotics: Navigation and Perception 4/05/2011 Search Spaces I b Advanced Robotics: Navigation and Perception 4/05/2011 1 Before we get started... Website updated with Spring quarter grading policy 30% homework, 20% lab, 50% course project Website

More information

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z Basic Linear Algebra Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ 1 5 ] 7 9 3 11 Often matrices are used to describe in a simpler way a series of linear equations.

More information

Introduction to Robotics

Introduction to Robotics Université de Strasbourg Introduction to Robotics Bernard BAYLE, 2013 http://eavr.u-strasbg.fr/ bernard Modelling of a SCARA-type robotic manipulator SCARA-type robotic manipulators: introduction SCARA-type

More information

Geometric transformations in 3D and coordinate frames. Computer Graphics CSE 167 Lecture 3

Geometric transformations in 3D and coordinate frames. Computer Graphics CSE 167 Lecture 3 Geometric transformations in 3D and coordinate frames Computer Graphics CSE 167 Lecture 3 CSE 167: Computer Graphics 3D points as vectors Geometric transformations in 3D Coordinate frames CSE 167, Winter

More information

62 Basilio Bona - Dynamic Modelling

62 Basilio Bona - Dynamic Modelling 6 Basilio Bona - Dynamic Modelling Only 6 multiplications are required compared to the 7 that are involved in the product between two 3 3 rotation matrices...6 Quaternions Quaternions were introduced by

More information

Position and Orientation Control of Robot Manipulators Using Dual Quaternion Feedback

Position and Orientation Control of Robot Manipulators Using Dual Quaternion Feedback Position and Orientation Control of Robot Manipulators Using Dual Quaternion Feedback Hoang-Lan Pham, Véronique Perdereau, Bruno Vilhena Adorno and Philippe Fraisse UPMC Univ Paris 6, UMR 7222, F-755,

More information

Quaternions and Euler Angles

Quaternions and Euler Angles Quaternions and Euler Angles Revision #1 This document describes how the VR Audio Kit handles the orientation of the 3D Sound One headset using quaternions and Euler angles, and how to convert between

More information

Analysis of Euler Angles in a Simple Two-Axis Gimbals Set

Analysis of Euler Angles in a Simple Two-Axis Gimbals Set Vol:5, No:9, 2 Analysis of Euler Angles in a Simple Two-Axis Gimbals Set Ma Myint Myint Aye International Science Index, Mechanical and Mechatronics Engineering Vol:5, No:9, 2 waset.org/publication/358

More information

Jorg s Graphics Lecture Notes Coordinate Spaces 1

Jorg s Graphics Lecture Notes Coordinate Spaces 1 Jorg s Graphics Lecture Notes Coordinate Spaces Coordinate Spaces Computer Graphics: Objects are rendered in the Euclidean Plane. However, the computational space is better viewed as one of Affine Space

More information

Kinematical Animation.

Kinematical Animation. Kinematical Animation 3D animation in CG Goal : capture visual attention Motion of characters Believable Expressive Realism? Controllability Limits of purely physical simulation : - little interactivity

More information

ECE569 Fall 2015 Solution to Problem Set 2

ECE569 Fall 2015 Solution to Problem Set 2 ECE569 Fall 2015 Solution to Problem Set 2 These problems are from the textbook by Spong et al. 1, which is the textbook for the ECE580 this Fall 2015 semester. As such, many of the problem statements

More information

PSE Game Physics. Session (3) Springs, Ropes, Linear Momentum and Rotations. Oliver Meister, Roland Wittmann

PSE Game Physics. Session (3) Springs, Ropes, Linear Momentum and Rotations. Oliver Meister, Roland Wittmann PSE Game Physics Session (3) Springs, Ropes, Linear Momentum and Rotations Oliver Meister, Roland Wittmann 08.05.2015 Session (3) Springs, Ropes, Linear Momentum and Rotations, 08.05.2015 1 Outline Springs

More information

1 Transformations. Chapter 1. Transformations. Department of Computer Science and Engineering 1-1

1 Transformations. Chapter 1. Transformations. Department of Computer Science and Engineering 1-1 Transformations 1-1 Transformations are used within the entire viewing pipeline: Projection from world to view coordinate system View modifications: Panning Zooming Rotation 1-2 Transformations can also

More information

A Detailed Look into Forward and Inverse Kinematics

A Detailed Look into Forward and Inverse Kinematics A Detailed Look into Forward and Inverse Kinematics Kinematics = Study of movement, motion independent of the underlying forces that cause them September 19-26, 2016 Kinematics Preliminaries Preliminaries:

More information

Rotations in 3D Graphics and the Gimbal Lock

Rotations in 3D Graphics and the Gimbal Lock Rotations in 3D Graphics and the Gimbal Lock Valentin Koch Autodesk Inc. January 27, 2016 Valentin Koch (ADSK) IEEE Okanagan January 27, 2016 1 / 37 Presentation Road Map 1 Introduction 2 Rotation Matrices

More information

Configuration Space. Chapter 2

Configuration Space. Chapter 2 Chapter 2 Configuration Space A typical robot is mechanically constructed from several bodies, or links, that are connected by various types of joints. The robot moves when certain joints are driven by

More information

Motivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010)

Motivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010) Advanced Computer Graphics (Fall 2010) CS 283, Lecture 19: Basic Geometric Concepts and Rotations Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs283/fa10 Motivation Moving from rendering to simulation,

More information

Forward kinematics and Denavit Hartenburg convention

Forward kinematics and Denavit Hartenburg convention Forward kinematics and Denavit Hartenburg convention Prof. Enver Tatlicioglu Department of Electrical & Electronics Engineering Izmir Institute of Technology Chapter 5 Dr. Tatlicioglu (EEE@IYTE) EE463

More information

C O M P U T E R G R A P H I C S. Computer Graphics. Three-Dimensional Graphics I. Guoying Zhao 1 / 52

C O M P U T E R G R A P H I C S. Computer Graphics. Three-Dimensional Graphics I. Guoying Zhao 1 / 52 Computer Graphics Three-Dimensional Graphics I Guoying Zhao 1 / 52 Geometry Guoying Zhao 2 / 52 Objectives Introduce the elements of geometry Scalars Vectors Points Develop mathematical operations among

More information

Computer Vision. 2. Projective Geometry in 3D. Lars Schmidt-Thieme

Computer Vision. 2. Projective Geometry in 3D. Lars Schmidt-Thieme Computer Vision 2. Projective Geometry in 3D Lars Schmidt-Thieme Information Systems and Machine Learning Lab (ISMLL) Institute for Computer Science University of Hildesheim, Germany 1 / 26 Syllabus Mon.

More information

Computer Animation II

Computer Animation II Computer Animation II Orientation interpolation Dynamics Some slides courtesy of Leonard McMillan and Jovan Popovic Lecture 13 6.837 Fall 2002 Interpolation Review from Thursday Splines Articulated bodies

More information

Curve Subdivision in SE(2)

Curve Subdivision in SE(2) Curve Subdivision in SE(2) Jan Hakenberg, ETH Zürich 2018-07-26 Figure: A point in the special Euclidean group SE(2) consists of a position in the plane and a heading. The figure shows two rounds of cubic

More information

COMP 558 lecture 19 Nov. 17, 2010

COMP 558 lecture 19 Nov. 17, 2010 COMP 558 lecture 9 Nov. 7, 2 Camera calibration To estimate the geometry of 3D scenes, it helps to know the camera parameters, both external and internal. The problem of finding all these parameters is

More information

Rotation with Quaternions

Rotation with Quaternions Rotation with Quaternions Contents 1 Introduction 1.1 Translation................... 1. Rotation..................... 3 Quaternions 5 3 Rotations Represented as Quaternions 6 3.1 Dynamics....................

More information

CHAPTER 40 CARTESIAN AND POLAR COORDINATES

CHAPTER 40 CARTESIAN AND POLAR COORDINATES CHAPTER 40 CARTESIAN AND POLAR COORDINATES EXERCISE 169 Page 462 1. Express (3, 5) as polar coordinates, correct to 2 decimal places, in both degrees and in From the diagram, r = 32 + 52 = 5.83 y and 5

More information

ME/CS 133(a): Final Exam (Fall Quarter 2017/2018)

ME/CS 133(a): Final Exam (Fall Quarter 2017/2018) ME/CS 133(a): Final Exam (Fall Quarter 2017/2018) Instructions 1. Limit your total time to 5 hours. You can take a break in the middle of the exam if you need to ask a question, or go to dinner, etc. That

More information

DETC APPROXIMATE MOTION SYNTHESIS OF SPHERICAL KINEMATIC CHAINS

DETC APPROXIMATE MOTION SYNTHESIS OF SPHERICAL KINEMATIC CHAINS Proceedings of the ASME 2007 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference IDETC/CIE 2007 September 4-7, 2007, Las Vegas, Nevada, USA DETC2007-34372

More information

Performance Study of Quaternion and Matrix Based Orientation for Camera Calibration

Performance Study of Quaternion and Matrix Based Orientation for Camera Calibration Performance Study of Quaternion and Matrix Based Orientation for Camera Calibration Rigoberto Juarez-Salazar 1, Carlos Robledo-Sánchez 2, Fermín Guerrero-Sánchez 2, J. Jacobo Oliveros-Oliveros 2, C. Meneses-Fabian

More information

INF3320 Computer Graphics and Discrete Geometry

INF3320 Computer Graphics and Discrete Geometry INF3320 Computer Graphics and Discrete Geometry Transforms (part II) Christopher Dyken and Martin Reimers 21.09.2011 Page 1 Transforms (part II) Real Time Rendering book: Transforms (Chapter 4) The Red

More information

Vector Algebra Transformations. Lecture 4

Vector Algebra Transformations. Lecture 4 Vector Algebra Transformations Lecture 4 Cornell CS4620 Fall 2008 Lecture 4 2008 Steve Marschner 1 Geometry A part of mathematics concerned with questions of size, shape, and relative positions of figures

More information

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6. ) is graphed below:

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6. ) is graphed below: Polar Coordinates Any point in the plane can be described by the Cartesian coordinates (x, y), where x and y are measured along the corresponding axes. However, this is not the only way to represent points

More information

DIMENSIONAL SYNTHESIS OF SPATIAL RR ROBOTS

DIMENSIONAL SYNTHESIS OF SPATIAL RR ROBOTS DIMENSIONAL SYNTHESIS OF SPATIAL RR ROBOTS ALBA PEREZ Robotics and Automation Laboratory University of California, Irvine Irvine, CA 9697 email: maperez@uci.edu AND J. MICHAEL MCCARTHY Department of Mechanical

More information

Transformations Week 9, Lecture 18

Transformations Week 9, Lecture 18 CS 536 Computer Graphics Transformations Week 9, Lecture 18 2D Transformations David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 3 2D Affine Transformations

More information

AOE 5204: Homework Assignment 4 Due: Wednesday, 9/21 in class. Extended to Friday 9/23 Online Students:

AOE 5204: Homework Assignment 4 Due: Wednesday, 9/21 in class. Extended to Friday 9/23 Online Students: AOE 5204: Homework Assignment 4 Due: Wednesday, 9/21 in class. Extended to Friday 9/23 Online Students: Email (cdhall@vt.edu) by 5 PM Suppose F b is initially aligned with F i and at t = 0 begins to rotate

More information

1 Historical Notes. Kinematics 5: Quaternions

1 Historical Notes. Kinematics 5: Quaternions 1 Historical Notes Quaternions were invented by the Irish mathematician William Rowan Hamilton in the late 1890s. The story goes 1 that Hamilton has pondered the problem of dividing one vector by another

More information

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6 Polar Coordinates Any point in the plane can be described by the Cartesian coordinates (x, y), where x and y are measured along the corresponding axes. However, this is not the only way to represent points

More information

Optimization-Based Calibration of a Triaxial Accelerometer-Magnetometer

Optimization-Based Calibration of a Triaxial Accelerometer-Magnetometer 2005 American Control Conference June 8-10, 2005. Portland, OR, USA ThA07.1 Optimization-Based Calibration of a Triaxial Accelerometer-Magnetometer Erin L. Renk, Walter Collins, Matthew Rizzo, Fuju Lee,

More information