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

Size: px
Start display at page:

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

Transcription

1 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 and place it correctly on a second work piece. (ie. placing micro-processors on a PCB). To do this the end effector of the robot must be correctly positioned relative to the work piece. Robots often operate in situations without the assistance of sophisticated jigs and fixturing. They have many more degrees of freedom than a CNC machine would have. There may be some variation in the exact position of the work piece presented. The problem presented to the engineer is: Firstly, how can one position the end effector of a robot in the correct position initially to grasp the work piece. Secondly, how best to move the robotic arm to move the part without impacting any surrounding equipment (or people) and reposition the manipulator to the new position. The key information needed to complete the task is: Where is the work piece Where is the end effector In the case of a mobile robot one may also ask the important question; Where is the robot. We need to introduce a set of tools and notations for describing positions and orientations It is important to note that these tools are not specific to robotics, but rather are tools that come from the more general discipline of engineering dynamics. Start with an inertial frame of reference. Inertial frame of reference: lso termed the universe coordinate system/frame or base frame. Is a frame of reference in which dynamics of an object are inertial. Usually has a fixed stationary origin. Notation: 1

2 With multiple frames of reference the base frame is often denoted, {} or just. The inertial frame is also often denoted I or {0}. I have also seen F 0, {F 0 }, F 0, F commonly used. These notes do not follow a convention with labelling of frames of reference. It is important to be flexible with notation. Specifying positions position in space may be denoted by a triple of numbers P = P x P y P z Position itself is a physical quantity independent of any frame. However it is often useful to express the position of a point in space relative to some frame. The left superscript on P denotes the frame {} in which the position is expressed. If one considers a different base frame {B}, the location of the physical point P does not change, however the triple of reals (ie. B P ) that denote its position in the new coordinates system of {B} certainly do P B P In fact, as we shall see later P = P Borg + B P where P Borg denotes the position of the origin of {B} expressed in frame {}. Example 2.1: (give example in class) triple of numbers without a reference frame carries no physical meaning. Sometimes the left superscripts 2

3 are dropped when the frame of reference is clear from context - one should be careful of making errors in such cases. Specifying orientations single point in space has no orientation. We are usually interested in describing the orientation in space of some rigid body (eg robot end effector). The approach is to attach a frame fixed to the body. ssociate the coordinate system (X, Y, Z ) to the inertial frame of reference {}. The objects (X, Y, Z ) are unit vectors representing the coordinate directions in {}. By construction X = 1 0 0, Y = 0 1 0, Z = ttach a frame to the body in space whose orientation we wish to describe. Denote this frame by {B}. ssume the situation that the origin of {B} is coincident to {}, i.e. only orientation is important. Then associate the coordinate system (X B, Y B, Z B ) to {B} so that the change in orientation from the inertial frame to the new frame is a rotation of the basis (X, Y, Z ) to the new basis (X B, Y B, Z B ). Note that by convention, all frames of reference are right-hand frames. The coordinate directions (X B, Y B, Z B ) fully determine the orientation of {B}, and we can describe this orientation with respect to the frame of reference {} by the triple of vectors ( X B, Y B, Z B ) Compact notation is achieved by grouping the triple of vectors representing the orientation {B} relative to the frame of reference {} by a matrix BR = ( X B Y ) B Z B = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 Such a matrix is known as a rotation matrix. How can one explicitly calculate the values of the entries of a rotation matrix? Let X, Y denote the usual inner (ie. dot) product between two vectors. B R = X, X B X, Y B X, Z B Y, X B Y, Y B Y, Z B Z, X B Z, Y B Z, Z B 3

4 Since Y and X B are unit vectors, their dot product is given by the cosine of the angle between them Y, X B = r 21 = cos(θ) it is for this reason that the entries of a rotation matrix are known as direction cosines. Example 2.2: (give example in class) Properties of Rotation matrices ( B R ) T ( B R ) = X B T X B X B T Y B X B T Z B Y B T X B Y B T Y B Y B T Z B T Z B X T B Z B Y T B Z B Z B = = I ll rotation matrices are orthogonal matrices R T R = I 3. (ie. both the rows and columns form an orthonormal basis; each row/column has length 1, an each are mutually perpendicular) Due to the symmetry of the inner product B R = ( B R ) T Recalling the orthogonal property one has ( B R ) T B R = B R B R = I 3 Thus, the rotation matrix representing {B} with respect to {} is the inverse of the matrix representing {} with respect to {B} B R = ( B R ) 1 = ( B R ) T (not really a surprising) In fact rotation matrices form a group in matrix space termed the special orthogonal group SO(3) = {R R 3 3 R T R = I 3 } The group operations are R Q = RQ, R 1 = R T, Group multiplication Inverse operation 4

5 R ı = I 3, Group identity Rotation Matrices as Transform Mappings We have seen that one use of a rotation matrix is to define the orientation of one frame with respect to another. nother use for a transformation matrix is as a transform mapping, i.e. a mapping that takes a vector quantity expressed in one frame, and expresses it in another. representation of a vector V relies on a frame of reference V = X, V Y, V, Z, V V R 3 vector may be represented in different frames of reference. For example if B V is known then V = B X, B V B X T B Y, B V = B Y T B Z, B B V V B Z T V = B R T B V = BR B V Thus, the second interpretation is that the rotation matrix is a mapping between representations of free vectors. BR : frame B frame B V V := B RB V Example 2.3: (give example in class) So we have seen two distinct interpretations for rotation matrices. There is in fact also a third interpretation, but we will explore this further in the context of general frames in the next section. General Frames 5

6 We have used the term frame to this point as some coordinate system either translated or rotated relative to some base inertial coordinate system. In general we would like our frames both translated and rotated relative to the inertial system. So a general frame of reference {B} is fully specified by 1. The position of the origin of the frame (expressed in the inertial frame of reference). P Borg ξ B origin of frame {B} relative to frame {} (Used in Craig. Ugly but unambiguous.) The Greek ξ is often used 0 ξ B, ξ B origin of frame {B} relative to inertial frame 2. The orientation of the frame, expressed as a rotation matrix relative to a reference frame. BR R B, R Orientation of {B} relative to {} Orientation of {B} relative to inertial frame Mapping between frames s in the pure rotation case, we are interested in deriving something like a rotation matrix that allows: 1. description of an arbitrary frame in a concise format 2. The machinery to be able to transfer the description of vector quantities from one frame to another ssume an inertial frame {}, and another frame {B} which is located somewhere in space and has arbitrary orientation to {} (maybe {B} could be attached to the robot end effector for example). It is clear to see that any point P expressed in terms of frame {B}, ie. B P, can be expressed in terms of frame {} according to: P := BR B P + P Borg However, while this description solves 1., it provides a clumsy solution to 2. The trick here is to embed R 3 into R 4 by creating the matrix operator, denoted as BT, by forming the matrix 6

7 BT = B R P Borg where this matrix is termed a homogeneous transformation matrix, so that the previous expression for P can be arrived at as: B R P Borg B P 1 = B RB P + P Borg 1 The theory of homogeneous transformations is also heavily used in the Computer Graphics and Computer Vision fields, where the last row in BT can be other than [0, 0, 0, 1] to effect perspective and scaling operations. This more general machinery takes care of the special pure-translation and pure-rotation cases. Example 2.4: (give example in class) Transformation Operator third interpretation of a homogeneous transform is as a transformation operator on a vector quantity in a single frame. Imagine we have a vector P expressed in a frame {}, and we wish to rotate and translate that vector by some amount with respect to {}. homogeneous transform can be shown to achieve this operation. lthough this operation seems quite different to the mapping interpretation introduced previously, the mathematics behind it is the same. Intuitively, one can see why this is the case: 1. Keeping the vector unmoved and expressing it in a frame that has been translated and rotated backwards (i.e. the mapping between frames interpretation), 7

8 is the same mathematically as 2. Keeping the frame unmoved and translating and rotating the vector forwards (the operator interpretation) Since the operator interpretation is relevant to a single frame, we can drop the previous pre-super/subscripts, and simply use the notation T. Example 2.5: (give example in class) Summary - Interpretations of Homogeneous Transform homogeneous transformation B T = B R P Borg can be thought of as 1. a description of a frame, ie. BT describes the spatial relationship of {B} with respect to {} 2. transform mapping, where for some vector P. 3. transform operator, where BT : frame B frame B P P := B RB P + P Borg T : P 1 P 2 i.e. an operator which transforms P 1 into P 2, both expressed in frame {} Transformation rithmetic rmed with the tool of homogeneous transformations, we now consider two elementary operations of transforms that we will often require. 8

9 The first is the operation of multiplication. Consider the situation where we have a sequence of frames defined in space, where each member of the sequence is defined in terms of the previous one, eg. B T, B C T, C D T. Imagine a point in space whose position is described in frame {D} by the vector D P Then we can find the position of this point in frame {} by noting C P = C D T D P and B P = B C T C P and P = B T B P and we get the following not unexpected result P = B T B C T C D T D P Note that the order in which transformation matrices should be applied can sometimes be confusing (order is important since matrix multiplication is not in general communitative!). The notation can be used to benefit here, since super and sub-scrips of adjacent transforms should cancel. If D P is a point on an object in a robot gripper, {D} is the frame attached to the rigid body that is the gripper, and {} is the inertial frame at the base of the robot, then we can motivate the utility of the previous expression by noting that it gives us the position of the point on the object with respect to the base frame of the robot. Inverting a Transform We saw with rotation matrices that B R = B R 1 and it is the same for homogeneous transforms, ie. B T = B T 1 Physically this means that if we have a frame {B} which is known with respect to a frame {} (that is, we know B T ), then we can specify frame {} in terms of frame {B} by determining B T 1. straightforward way of calculating the inverse is to compute the inverse of the 4x4 homogeneous 9

10 transform, however, this does not take into account its special structure. smarter way to calculate the inverse is using the following equation B T 1 = B T = B RT B RT P Borg whose derivation is presented in Craig (p39 in the second edition). The special Euclidean group The set of all transformations BT forms a group under multiplication with inverse and identity element SE(3) = { BT BT : {B} {}} C T = B T B C T B T 1 = B T T ı = T = I 4 This is the special Euclidean group SE(3) and (almost) all we will need for this course is the multiplication and the inverse operations. The geometry of SE(3) is cool and sexy theory and is well worth a couple of years study. (perhaps) More on Rotation matrices Rotation matrices are represented by three orthonormal unit vectors B R = ( ) X B Y B Z B The orthonormal constraints are three unity constraints X B = 1, Y B = 1, Z B = 1 and three orthogonality constraints X B, Y B = 0, Y B, Z B = 0, X B, Z B = 0. These constraints fully characterise orthogonal matrices. 10

11 There are nine entries in a three-by-three matrix and six constraints. Thus, rotation matrices should be able to be parameterised by three variables. This is a serious computation issue since over-parameterisation of the rotation matrix may lead to numerical instabilities in inverse kinematic computations. Fixed and Euler ngles Conceptually one could imagine that a frame can be aligned with any other frame in space by sequentially applying 3 rotations about coordinate axes That is, we can specify the orientation of a frame B with respect to another frame by a triple of angles. There are actually 24 possible ways these rotations can be applied If {} is the frame we are rotating, at the extrema of these possibilities are: when all rotations occur around the coordinate axes of {} in its original orientation - called fixed angles. when all rotations occur around the coordinate axes of {} in their rotated orientations - called euler angles. Fixed angles is conceptually simpler and presented in Craig. Lets look at the Euler angle case. Euler ngles The orientation of an object can be given by three angles (φ, θ, ψ) representing yaw, pitch and roll. Diagram showing the yaw, pitch and roll rotations taken in order. The convention indicated for the rotations follows the classical yaw, pitch, roll convention often used in aeronautical applications. This convention is also commonly termed the Z Y X Euler angles. Yaw-Pitch-Roll Euler angles 11

12 E z E 3 θ ψ E 2 φ ψ R φ E y E x E y ψ E 1 = R φ R θ E x Yaw: Pitch: Roll: Firstly, a rotation of angle φ around the axes E z is applied. This corresponds to yaw of rigid body relative to the inertial frame. Denote this rotation by R φ. Secondly, a rotation of angle θ around the rotated version of the E y axis. This corresponds to pitch of rigid body in the plane spanned by {E z, E a 1 }. Denote this rotation by R θ. Thirdly, a rotation of angle ψ around the axes E a 1 is applied. This corresponds to roll of the rigid body around the natural axis E a 1. Denote this rotation by R ψ. Rotation Matrix from Euler ngle Triple n obvious desire is an expression for the rotation matrix corresponding to a triple of Euler angles. Denote the frames of reference attached to each rotation by {0} (for the inertial), {} after the initial yaw rotation, {B} after the pitch rotation and {C} for the full rotation. Thus, R φ := 0 R, R θ := BR, R ψ := B CR. Clearly, the mapping 0 CR from the fully rotated {C} frame back to the inertial frame {0} is 0 C R = 0 R B RB C R = R φr θ R ψ 12

13 When in doubt about the order of rotations, go back to using the idea that left sub scripts should cancel with left superscripts. The rotation matrices R φ, R θ and R ψ are easily computed. R φ is associated with yaw and fixes the e z direction while rotating the (x, y) plane R φ = c φ s φ 0 s φ c φ R θ is associated with pitch and fixes the e y direction while rotating the (x, z) plane. Beware of the direction in which the pitch angle is measured - convention rotates the z-axis toward the x-axis R θ = c θ 0 s θ s θ 0 c θ, and finally roll is associated with R ψ and is given by R ψ = c ψ s ψ 0 s ψ c ψ. Then 0 CR = c φ s φ 0 s φ c φ c θ 0 s θ s θ 0 c θ c ψ s ψ 0 s ψ c ψ 0 C R = c θc φ (s ψ s θ c φ c ψ s φ ) (c ψ s θ c φ + s ψ s φ ) c θ s φ (s ψ s θ s φ + c ψ c φ ) (c ψ s θ s φ s ψ c φ ) s θ (s ψ c θ ) (c ψ c θ ). Euler ngles from Rotation Matrix It is a mostly a straight forward matter to extract the angles (φ, θ, ψ) from the rotation matrix based on the explicit form of 0 C R given. 13

14 In practice, one should beware of computational ill-conditioning when computing Euler angles from the rotation matrices. Given a rotation matrix R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33. Craig derives the equations for φ, θ and ψ as: φ = tan2( r 21 /cos(θ), r 11 /cos(θ)) θ = tan2( r 31, r r2 21 ) ψ = tan2( r 32 /cos(θ), r 33 /cos(θ)) where tan2(x, y) computes tan 1 (y/x) on a quadrant by quadrant basis according to the signs of x and y. Note the 2 possible solutions (positive and negative) for θ. If always take positive solution, then 90 θ 90. Equivalent ngle-axis n alternate 4-parameter specification of a frame s orientation in space (ie. alternate to the rotation matrix and triple of angles descriptions) is the Equivalent ngle-axis idea. One could imagine that a frame can be rotated to any particular orientation by selecting an axis of rotation (passing through the frame s origin) and a rotation amount. Theorem: [Euler] ny rotation R is equivalent to a rotation about an axis ω R 3, through an angle θ [0, 2π). Thus, any rotation R may be parameterised by a unit vector k and a scalar θ R = R(k, θ) corresponding to the axis of rotation and the angle through which the rotation is undertaken. 14

15 Proof Euler s theorem is proved using eigenvalue decomposition of a rotation matrix. ngle-axis Parameters from a Rotation Matrix Given a rotation matrix, ie. R SO(3) R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 The angle-axis parameters may be recovered by θ = cos 1 ( r11 + r 22 + r ) and ω = 1 r 32 r 23 r 13 r 31 2 sin(θ) r 21 r 12 The angle-axis parameterisation is not unique. ( ω, θ). Moreover, (ω, θ + 2π) = (ω, θ). The parameters (ω, θ) lead to the same rotation as more serious computational problem is that for small angular rotations, the axis becomes ill-defined. Indeed, the solution for ω given above fails for θ 0 or θ 180 The angle-axis parameterisation of a rotation should not be used for small rotations. Quaternions or Euler parameters Yet another approach to representing an orientation in space is the Euler Parameters method. Let (ω, θ) be an angle axis representation for a rotation R. Define ɛ 0 = cos(θ/2) ɛ 1 = ω 1 sin(θ/2) ɛ 2 = ω 2 sin(θ/2) ɛ 3 = ω 3 sin(θ/2) The vector ɛ = (ɛ 0, ɛ 1, ɛ 2, ɛ 3 ) = (ɛ 0, ɛ) is known as the unit quaternion representation of R. ɛ ɛ2 1 + ɛ2 2 + ɛ2 3 = 1 15

16 and the parameters, ɛ 0, ɛ 1, ɛ 2, ɛ 3 are called the Euler Parameters The scalar term ɛ 0 in the quaternion is linked directly to the angle of rotation while the vector part ɛ = (ɛ 1, ɛ 2, ɛ 3 ) is a scaled version of the axis of rotation. Note that as ɛ 0 0 then ɛ remains finite. Thus, the ill conditioning of the angle-axis convention for small rotations does not exist in the unit quaternion representation. Relationship to rotation matrices The rotation matrix R associated with the rotation defined by a quarternion ɛ = (ɛ 0, ɛ 1, ɛ 2, ɛ 3 ) is R = (1 2ɛ2 2 2ɛ2 3 ) 2(ɛ 1ɛ 2 ɛ 3 ɛ 4 ) 2(ɛ 1 ɛ 3 + ɛ 2 ɛ 4 ) 2(ɛ 1 ɛ 2 + ɛ 3 ɛ 4 ) (1 2ɛ 2 1 2ɛ2 3 ) 2(ɛ 2ɛ 3 ɛ 1 ɛ 4 ) 2(ɛ 1 ɛ 3 ɛ 2 ɛ 4 ) 2(ɛ 2 ɛ 3 + ɛ 1 ɛ 4 ) (1 2ɛ 2 1 2ɛ 2 2) The quarternion ɛ defining the same orientation as some given rotation matrix R SO(3) R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 is ɛ 0 = r11 + r 22 + r 33 ɛ 1 = r 32 r 23 4ɛ 4 ɛ 2 = r 13 r 31 4ɛ 4 ɛ 3 = r 21 r 12 4ɛ 4 Note that for rotations of 0 the quaternions are well defined. This avoids some of the ill-conditioning problems associated with the angle-axis convention. Concatenating rotations 16

17 nother advantage of quaternions is that concatenations of rotations can be computed directly in the representation. Consider two rotation matrices R, Q SO(3) associated with quaternion ɛ and η then the rotation RQ is associated with the quaternion ɛ 0 η 0 ɛ, η ɛ 0 η 0 ɛ 1 η 1 ɛ 2 η 2 ɛ 3 η 3 ɛ η = ɛ 0 η + η 0 ɛ ɛ η = ɛ 0 η 1 + η 0 ɛ 1 (ɛ 2 η 3 η 2 ɛ 3 ) ɛ 0 η 2 + η 0 ɛ 2 (η 1 ɛ 3 ɛ 1 η 3 ) ɛ 0 η 3 + η 0 ɛ 3 (ɛ 1 η 2 η 1 ɛ 2 ) This may look like a schmozzle but it is actually related to a group structure. Of course - who cares. Rotation matrices are annoyingly complicated things to represent in a computer The most common representations are: Rotation matrix R: R SO(3) = {R R 3 3 R T R = I 3, det(r) = 1} dvantages: Direct interpretation in terms of change of basis. Disadvantages: Nine dependent parameters must be stored. The physical role of individual parameters is lost - only the matrix as a whole has meaning. Euler ngles: dvantages: Rotations are described by three independent parameters. Simple physical interpretation of role of each angle. Disadvantages: Representation is not unique and leads to problems with singularities. There is no simple way to compute concatenated rotations other than expansion into a matrix. ngle-axis convention: dvantages: The most intuitive representation of a rotation. Disadvantages: Requires four parameters to store a single rotation. Highly ill conditioned for small rotations. There is no simple manner to compute concatenated rotations. Unit Quaternions: 17

18 dvantages: Preserves some of the intuition of the angle-axis representation while overcoming the ill conditioning for small rotations and admitting a group structure that directly allows computation of concatenated rotations. Disadvantages: Four parameters are needed to express a rotation. The parameterisation is more complicated than angle-axis and somewhat obscure. Quaternion multiplication doesn t have the same intuitive appeal of matrix multiplication. Summary: Introduced in the form of frames a method for specifying: 1. positions of points in space 2. orientations of rigid bodies in space 3. position and orientation of rigid bodies in space The machinery to achieve this was: (a) rotation matrices for 2 (b) homogeneous transformation matrices for 3. For both (a) and (b), three distinct interpretations existed: (i) as a description of frame (ii) as a transform mapping, i.e. mapping the description of a vector in one frame into its description in another (iii) as an operator, i.e. an operator on a vector in a particular frame to producing another distinct vector in the same frame. We looked at the multiplication and inverse operations of homogeneous transformations and their physical meaning. We explored other, more efficient, representations to rotation matrices for specifying the orientation of a frame: 1. Fixed and Euler angles 18

19 2. Equivalent ngle xis 3. Euler Parameters or Quarternions and compared the advantages and disadvantages of each method. 19

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

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

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

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

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

θ 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

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6

Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6 Math background 2D Geometric Transformations CS 4620 Lecture 6 Read: Chapter 2: Miscellaneous Math Chapter 5: Linear Algebra Notation for sets, functions, mappings Linear transformations Matrices Matrix-vector

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

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

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions.

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions. Path and Trajectory specification Robots are built to accomplish complex and difficult tasks that require highly non-linear motions. Specifying the desired motion to achieve a specified goal is often a

More information

2D/3D Geometric Transformations and Scene Graphs

2D/3D Geometric Transformations and Scene Graphs 2D/3D Geometric Transformations and Scene Graphs Week 4 Acknowledgement: The course slides are adapted from the slides prepared by Steve Marschner of Cornell University 1 A little quick math background

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

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

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

EEE 187: Robotics Summary 2

EEE 187: Robotics Summary 2 1 EEE 187: Robotics Summary 2 09/05/2017 Robotic system components A robotic system has three major components: Actuators: the muscles of the robot Sensors: provide information about the environment and

More information

IntroductionToRobotics-Lecture02

IntroductionToRobotics-Lecture02 IntroductionToRobotics-Lecture02 Instructor (Oussama Khatib):Okay. Let's get started. So as always, the lecture starts with a video segment, and today's video segment comes from 1991, and from the group

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

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

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

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

Jacobians. 6.1 Linearized Kinematics. Y: = k2( e6)

Jacobians. 6.1 Linearized Kinematics. Y: = k2( e6) Jacobians 6.1 Linearized Kinematics In previous chapters we have seen how kinematics relates the joint angles to the position and orientation of the robot's endeffector. This means that, for a serial robot,

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

Kinematics. Kinematics analyzes the geometry of a manipulator, robot or machine motion. The essential concept is a position.

Kinematics. Kinematics analyzes the geometry of a manipulator, robot or machine motion. The essential concept is a position. Kinematics Kinematics analyzes the geometry of a manipulator, robot or machine motion. The essential concept is a position. 1/31 Statics deals with the forces and moments which are aplied on the mechanism

More information

ME 115(a): Final Exam (Winter Quarter 2009/2010)

ME 115(a): Final Exam (Winter Quarter 2009/2010) ME 115(a): Final Exam (Winter Quarter 2009/2010) Instructions 1. Limit your total time to 5 hours. That is, it is okay to take a break in the middle of the exam if you need to ask a question, or go to

More information

Geometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation

Geometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation Geometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation and the type of an object. Even simple scaling turns a

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

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

Answers. Chapter 2. 1) Give the coordinates of the following points:

Answers. Chapter 2. 1) Give the coordinates of the following points: Answers Chapter 2 1) Give the coordinates of the following points: a (-2.5, 3) b (1, 2) c (2.5, 2) d (-1, 1) e (0, 0) f (2, -0.5) g (-0.5, -1.5) h (0, -2) j (-3, -2) 1 2) List the 48 different possible

More information

Planar Robot Kinematics

Planar Robot Kinematics V. Kumar lanar Robot Kinematics The mathematical modeling of spatial linkages is quite involved. t is useful to start with planar robots because the kinematics of planar mechanisms is generally much simpler

More information

Perspective Projection in Homogeneous Coordinates

Perspective Projection in Homogeneous Coordinates Perspective Projection in Homogeneous Coordinates Carlo Tomasi If standard Cartesian coordinates are used, a rigid transformation takes the form X = R(X t) and the equations of perspective projection are

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

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

Inverse Kinematics of 6 DOF Serial Manipulator. Robotics. Inverse Kinematics of 6 DOF Serial Manipulator

Inverse Kinematics of 6 DOF Serial Manipulator. Robotics. Inverse Kinematics of 6 DOF Serial Manipulator Inverse Kinematics of 6 DOF Serial Manipulator Robotics Inverse Kinematics of 6 DOF Serial Manipulator Vladimír Smutný Center for Machine Perception Czech Institute for Informatics, Robotics, and Cybernetics

More information

EE Kinematics & Inverse Kinematics

EE Kinematics & Inverse Kinematics Electric Electronic Engineering Bogazici University October 15, 2017 Problem Statement Kinematics: Given c C, find a map f : C W s.t. w = f(c) where w W : Given w W, find a map f 1 : W C s.t. c = f 1

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

2D and 3D Transformations AUI Course Denbigh Starkey

2D and 3D Transformations AUI Course Denbigh Starkey 2D and 3D Transformations AUI Course Denbigh Starkey. Introduction 2 2. 2D transformations using Cartesian coordinates 3 2. Translation 3 2.2 Rotation 4 2.3 Scaling 6 3. Introduction to homogeneous coordinates

More information

Lecture Note 3: Rotational Motion

Lecture Note 3: Rotational Motion 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

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

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

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

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

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

CS4620/5620. Professor: Kavita Bala. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)

CS4620/5620. Professor: Kavita Bala. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner) CS4620/5620 Affine and 3D Transformations Professor: Kavita Bala 1 Announcements Updated schedule on course web page 2 Prelim days finalized and posted Oct 11, Nov 29 No final exam, final project will

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

Short on camera geometry and camera calibration

Short on camera geometry and camera calibration Short on camera geometry and camera calibration Maria Magnusson, maria.magnusson@liu.se Computer Vision Laboratory, Department of Electrical Engineering, Linköping University, Sweden Report No: LiTH-ISY-R-3070

More information

Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation

Matrices. Chapter Matrix A Mathematical Definition Matrix Dimensions and Notation Chapter 7 Introduction to Matrices This chapter introduces the theory and application of matrices. It is divided into two main sections. Section 7.1 discusses some of the basic properties and operations

More information

Early Fundamentals of Coordinate Changes and Rotation Matrices for 3D Computer Vision

Early Fundamentals of Coordinate Changes and Rotation Matrices for 3D Computer Vision Early Fundamentals of Coordinate Changes and Rotation Matrices for 3D Computer Vision Ricardo Fabbri Benjamin B. Kimia Brown University, Division of Engineering, Providence RI 02912, USA Based the first

More information

Equations of planes in

Equations of planes in Roberto s Notes on Linear Algebra Chapter 6: Lines, planes and other straight objects Section Equations of planes in What you need to know already: What vectors and vector operations are. What linear systems

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

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

COMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective

COMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective COMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective Department of Computing and Information Systems The Lecture outline Introduction Rotation about artibrary axis

More information

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects Object Representation Affine Transforms Polygonal Representation of Objects Although perceivable the simplest form of representation they can also be the most problematic. To represent an object polygonally,

More information

Transforms. COMP 575/770 Spring 2013

Transforms. COMP 575/770 Spring 2013 Transforms COMP 575/770 Spring 2013 Transforming Geometry Given any set of points S Could be a 2D shape, a 3D object A transform is a function T that modifies all points in S: T S S T v v S Different transforms

More information

Basics of Computational Geometry

Basics of Computational Geometry Basics of Computational Geometry Nadeem Mohsin October 12, 2013 1 Contents This handout covers the basic concepts of computational geometry. Rather than exhaustively covering all the algorithms, it deals

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

On the Kinematics of Undulator Girder Motion

On the Kinematics of Undulator Girder Motion LCLS-TN-09-02 On the Kinematics of Undulator Girder Motion J. Welch March 23, 2009 The theory of rigid body kinematics is used to derive equations that govern the control and measurement of the position

More information

+ i a y )( cosφ + isinφ) ( ) + i( a x. cosφ a y. = a x

+ i a y )( cosφ + isinφ) ( ) + i( a x. cosφ a y. = a x Rotation Matrices and Rotated Coordinate Systems Robert Bernecky April, 2018 Rotated Coordinate Systems is a confusing topic, and there is no one standard or approach 1. The following provides a simplified

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

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

Robot mechanics and kinematics

Robot mechanics and kinematics University of Pisa Master of Science in Computer Science Course of Robotics (ROB) A.Y. 2016/17 cecilia.laschi@santannapisa.it http://didawiki.cli.di.unipi.it/doku.php/magistraleinformatica/rob/start Robot

More information

Quaternion to Euler Angle Conversion for Arbitrary Rotation Sequence Using Geometric Methods

Quaternion to Euler Angle Conversion for Arbitrary Rotation Sequence Using Geometric Methods uaternion to Euler Angle Conversion for Arbitrary Rotation Sequence Using Geometric Methods ê = normalized Euler ation axis i Noel H. Hughes Nomenclature = indices of first, second and third Euler

More information

EECE 478. Learning Objectives. Learning Objectives. Linear Algebra and 3D Geometry. Linear algebra in 3D. Coordinate systems

EECE 478. Learning Objectives. Learning Objectives. Linear Algebra and 3D Geometry. Linear algebra in 3D. Coordinate systems EECE 478 Linear Algebra and 3D Geometry Learning Objectives Linear algebra in 3D Define scalars, points, vectors, lines, planes Manipulate to test geometric properties Coordinate systems Use homogeneous

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

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

Robot Inverse Kinematics Asanga Ratnaweera Department of Mechanical Engieering

Robot Inverse Kinematics Asanga Ratnaweera Department of Mechanical Engieering PR 5 Robot Dynamics & Control /8/7 PR 5: Robot Dynamics & Control Robot Inverse Kinematics Asanga Ratnaweera Department of Mechanical Engieering The Inverse Kinematics The determination of all possible

More information

Robotics (Kinematics) Winter 1393 Bonab University

Robotics (Kinematics) Winter 1393 Bonab University Robotics () Winter 1393 Bonab University : most basic study of how mechanical systems behave Introduction Need to understand the mechanical behavior for: Design Control Both: Manipulators, Mobile Robots

More information

3D Transformations and Complex Representations. Computer Graphics CMU /15-662, Fall 2016

3D Transformations and Complex Representations. Computer Graphics CMU /15-662, Fall 2016 3D Transformations and Complex Representations Computer Graphics CMU 15-462/15-662, Fall 2016 Quiz 4: Trees and Transformations Student solutions (beautiful!): Rotations in 3D What is a rotation, intuitively?

More information

Introduction to Robotics

Introduction to Robotics Introduction to Robotics Ph.D. Antonio Marin-Hernandez Artificial Intelligence Department Universidad Veracruzana Sebastian Camacho # 5 Xalapa, Veracruz Robotics Action and Perception LAAS-CNRS 7, av du

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

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

Today. Parity. General Polygons? Non-Zero Winding Rule. Winding Numbers. CS559 Lecture 11 Polygons, Transformations

Today. Parity. General Polygons? Non-Zero Winding Rule. Winding Numbers. CS559 Lecture 11 Polygons, Transformations CS559 Lecture Polygons, Transformations These are course notes (not used as slides) Written by Mike Gleicher, Oct. 005 With some slides adapted from the notes of Stephen Chenney Final version (after class)

More information

Coordinate Frames and Transforms

Coordinate Frames and Transforms Coordinate Frames and Transforms 1 Specifiying Position and Orientation We need to describe in a compact way the position of the robot. In 2 dimensions (planar mobile robot), there are 3 degrees of freedom

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

10. Cartesian Trajectory Planning for Robot Manipulators

10. Cartesian Trajectory Planning for Robot Manipulators V. Kumar 0. Cartesian rajectory Planning for obot Manipulators 0.. Introduction Given a starting end effector position and orientation and a goal position and orientation we want to generate a smooth trajectory

More information

Multiple View Geometry in Computer Vision

Multiple View Geometry in Computer Vision Multiple View Geometry in Computer Vision Prasanna Sahoo Department of Mathematics University of Louisville 1 Projective 3D Geometry (Back to Chapter 2) Lecture 6 2 Singular Value Decomposition Given a

More information

A GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS

A GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS A GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS HEMANT D. TAGARE. Introduction. Shape is a prominent visual feature in many images. Unfortunately, the mathematical theory

More information

CT5510: Computer Graphics. Transformation BOCHANG MOON

CT5510: Computer Graphics. Transformation BOCHANG MOON CT5510: Computer Graphics Transformation BOCHANG MOON 2D Translation Transformations such as rotation and scale can be represented using a matrix M.., How about translation? No way to express this using

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

Kinematics, Kinematics Chains CS 685

Kinematics, Kinematics Chains CS 685 Kinematics, Kinematics Chains CS 685 Previously Representation of rigid body motion Two different interpretations - as transformations between different coord. frames - as operators acting on a rigid body

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

Vector Calculus: Understanding the Cross Product

Vector Calculus: Understanding the Cross Product University of Babylon College of Engineering Mechanical Engineering Dept. Subject : Mathematics III Class : 2 nd year - first semester Date: / 10 / 2016 2016 \ 2017 Vector Calculus: Understanding the Cross

More information

Euclidean Space. Definition 1 (Euclidean Space) A Euclidean space is a finite-dimensional vector space over the reals R, with an inner product,.

Euclidean Space. Definition 1 (Euclidean Space) A Euclidean space is a finite-dimensional vector space over the reals R, with an inner product,. Definition 1 () A Euclidean space is a finite-dimensional vector space over the reals R, with an inner product,. 1 Inner Product Definition 2 (Inner Product) An inner product, on a real vector space X

More information

Figure 1: 2D arm. Figure 2: 2D arm with labelled angles

Figure 1: 2D arm. Figure 2: 2D arm with labelled angles 2D Kinematics Consier a robotic arm. We can sen it commans like, move that joint so it bens at an angle θ. Once we ve set each joint, that s all well an goo. More interesting, though, is the question of

More information

Chapter 1: Introduction

Chapter 1: Introduction Chapter 1: Introduction This dissertation will describe the mathematical modeling and development of an innovative, three degree-of-freedom robotic manipulator. The new device, which has been named the

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

INSTITUTE OF AERONAUTICAL ENGINEERING

INSTITUTE OF AERONAUTICAL ENGINEERING Name Code Class Branch Page 1 INSTITUTE OF AERONAUTICAL ENGINEERING : ROBOTICS (Autonomous) Dundigal, Hyderabad - 500 0 MECHANICAL ENGINEERING TUTORIAL QUESTION BANK : A7055 : IV B. Tech I Semester : MECHANICAL

More information

To Do. Outline. Translation. Homogeneous Coordinates. Foundations of Computer Graphics. Representation of Points (4-Vectors) Start doing HW 1

To Do. Outline. Translation. Homogeneous Coordinates. Foundations of Computer Graphics. Representation of Points (4-Vectors) Start doing HW 1 Foundations of Computer Graphics Homogeneous Coordinates Start doing HW 1 To Do Specifics of HW 1 Last lecture covered basic material on transformations in 2D Likely need this lecture to understand full

More information

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3 Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3 Computer Science 4766/6778 Department of Computer Science Memorial University of Newfoundland January 28, 2014 COMP 4766/6778 (MUN) Kinematics of

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

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

Structure from Motion. Prof. Marco Marcon

Structure from Motion. Prof. Marco Marcon Structure from Motion Prof. Marco Marcon Summing-up 2 Stereo is the most powerful clue for determining the structure of a scene Another important clue is the relative motion between the scene and (mono)

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

Solution of inverse kinematic problem for serial robot using dual quaterninons and plucker coordinates

Solution of inverse kinematic problem for serial robot using dual quaterninons and plucker coordinates University of Wollongong Research Online Faculty of Engineering and Information Sciences - Papers: Part A Faculty of Engineering and Information Sciences 2009 Solution of inverse kinematic problem for

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

DRAFT: Mathematical Background for Three-Dimensional Computer Graphics. Jonathan R. Senning Gordon College

DRAFT: Mathematical Background for Three-Dimensional Computer Graphics. Jonathan R. Senning Gordon College DRAFT: Mathematical Background for Three-Dimensional Computer Graphics Jonathan R. Senning Gordon College September 2006 ii Contents Introduction 2 Affine Geometry 3 2. Affine Space...................................

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

Viewing with Computers (OpenGL)

Viewing with Computers (OpenGL) We can now return to three-dimension?', graphics from a computer perspective. Because viewing in computer graphics is based on the synthetic-camera model, we should be able to construct any of the classical

More information

Geometry for Computer Graphics Part 1

Geometry for Computer Graphics Part 1 Geometry for Computer Graphics Part 1 MSc Computer Games and Entertainment Maths & Graphics Unit 2012/13 Lecturer(s): Frederic Fol Leymarie (in collaboration with Gareth Edwards) 1 First - For Complete

More information

Math 231E, Lecture 34. Polar Coordinates and Polar Parametric Equations

Math 231E, Lecture 34. Polar Coordinates and Polar Parametric Equations Math 231E, Lecture 34. Polar Coordinates and Polar Parametric Equations 1 Definition of polar coordinates Let us first recall the definition of Cartesian coordinates: to each point in the plane we can

More information

Monday, 12 November 12. Matrices

Monday, 12 November 12. Matrices Matrices Matrices Matrices are convenient way of storing multiple quantities or functions They are stored in a table like structure where each element will contain a numeric value that can be the result

More information