Chapter 1. Rigid Body Kinematics. 1.1 Introduction
|
|
- Brenda Allen
- 5 years ago
- Views:
Transcription
1 Chapter 1 Rigid Body Kinematics 1.1 Introduction This chapter builds up the basic language and tools to describe the motion of a rigid body this is called rigid body kinematics. This material will be the foundation for describing general mechanisms consisting of interconnected rigid bodies in various topologies that are the focus of this book. Only the geometric property of the body and its evolution in time will be studied; the response of the body to externally applied forces is covered in Chapter?? under the topic of rigid body dynamics. Rigid body kinematics is not only useful in the analysis of robotic mechanisms, but also has many other applications, such as in the analysis of planetary motion, ground, air, and water vehicles, limbs and bodies of humans and animals, and computer graphics and virtual reality. Indeed, in 1765, motivated by the precession of the equinoxes, Leonhard Euler decomposed a rigid body motion to a translation and rotation, parameterized rotation by three principal-axis rotation (Euler angles), and proved the famous Euler s rotation theorem?. A body is rigid if the distance between any two points fixed with respect to the body remains constant. If the body is free to move and rotate in space, it has 6 degree-of-freedom (DOF), 3 translational and 3 rotational, if we consider both translation and rotation. If the body is constrained in a plane, then it is 3-DOF, 2 translational and 1 rotational. We will adopt a coordinate-free approach as in?,? and use geometric, rather than purely algebraic, arguments as much as possible. Coordinate representation is introduced to enable computational manipulation. We will first present some relevant mathematical background of rudimentary linear algebra, including vector space and linear transforms, in Section 1.2. The configuration of a rigid body may be characterized by the position and orientation of a frame attached to the body. Various parameterizations of orientation, the rotation, or SO(3), group, is discussed in Section 1.3. The evolution on SO(3) and the relationship to angular velocity is discussed in Section 1.4. The full consideration of both position and orientation, the Euclidean, or SE(3), group, and its evoluation in time is given in Section 1.5. In Section 1.6, various distance metrics on SO(3) and SE(3) are introduced. 1
2 1.2 Linear Algebra Linear Vector Space A linear vector space, V, is a set that is closed under vector addition, +, and scalar multiplication. Elements of the set are called vectors and are denoted by an overhead arrow, e.g., v. The scalar field may be either real or complex. We will mostly just consider the real field. Vectors in a vector space may be endowed with the concept of magnitude, or norm, denoted by v. Such a vector space is called a normed linear space. A unit vector is defined as a vector of unit magnitude, i.e., v = 1. A vector space may be further equipped with an inner product < v, w >, which leads to the concept of projection and orthogonality. Such a vector space is called an inner product space. Vectors v and w are orthogonal if < v, w >= 0. The projection of v onto a unit vector e is defined as < v, e > e. A basis of a linear vector space is a collection of vectors { v 1,..., v n } such that every vector V may be represented as a unique linear combination of these vectors. The number of basis vectors, n, is called the dimension of V. Figure 1.1: Vector addition, orthogonality, and projection Example: The linear vector space that will be considered most frequently in this book is the 3- dimensional Euclidean space, E 3, with inner product denoted by v w = v w cos θ, where θ is the angle between v and w and v is the Euclidean norm of v. For E 3, there is also an additional operation called the cross product, v w, which produces a vector orthogonal to both v and w according to the right-hand rule, (i.e., pointing the fingers, except the thumb, along v then curl the fingers toward w, then the thumb points in the direction of v w), with magnitude v w = v w sin θ, where θ is the angle between v and w Linear Transformation A linear transforms maps one vector space to another and satisfies the rule of superposition. Let L : V 1 V 2, then L is a linear transform if Examples: L(α 1 v 1 + α 2 v 2 ) = α 1 L( v 1 ) + α 2 L( v 2 ), for all α 1, α 2 R, v 1, v 2 V. Dot product: L : E 3 R defined by L v = w v, where w is a given vector in E 3. Cross product: L : E 3 E 3 defined as L v = w v, where w is a given vector in E 3. 2
3 If V 1 and V 2 are inner product spaces, we can define the adjoint of a linear transformation, which in the matrix case is just the transpose matrix. Given L : V 1 V 2, L V 2 V 1 is the adjoint of L if it satisfies for all v 1 V 1 and v 2 V 2. < v 2, L v 1 > V2 =< L v 2, v 1 > V Orthonormal Frame The orientation of a rigid body in E 3 is completely characterized by an orthonormal frame attached to the body. A right-handed orthonormal frame is define as follows: Definition 1 ( e 1, e 2, e 3 ) is an orthonormal frame if 1. e i = 1, i = 1, 2, 3 (normality) 2. e i e j = 0 if i j, i, j = 1, 2, 3 (orthogonality) 3. e 1 e 2 = e 3 (right-hand rule). Figure 1.2: An orthonormal frame By writing E = e 1 e 2 e 3 we can regard E : R 3 E 3 as a linear transformation. The adjoint of E, E : E 3 R 3, may be readily computed: e 1 E = e 2. e 3 Note that E E = I 3, the 3 3 identity matrix. Similarly EE = I, the identity operator between E 3. The orthonormal vectors ( e 1, e 2, e 3 ) is also called an orthonormal basis of E 3 since every vector in E 3 may be represented as a unique linear combination of ( e 1, e 2, e 3 ). 3
4 1.2.4 Coordinate Representation of Vectors and Linear Transforms Since E provides an orthonormal basis for E 3, every v E 3 may be uniquely represented by a vector in R 3 : v = Ev E, (1.1) where the vector v E R 3 is called the representation of v in E. The frame E is now considered as a coordinate frame (with coordinate axes given by ( e 1, e 2, e 3 )). The elements of v E, the ordered set (v 1, v 2, v 3 ), is the coordinate of v in the coordinate frame E. To obtain the coordinate of v, we can simply project v onto the coordinate axes: v E = E v. (1.2) This follows directly from the orthonormality of E. Consider a linear transform L : V 1 V 2 where V 1 and V 2 are inner product spaces. Given orthonormal frames E 1 and E 2 for V 1 and V 2 respectively, the coordinate representation of L v is E 2 L v = E 2 LE 1 v 1. It is natural to define the coordinate representation of L by L = E 2 LE 1. (1.3) Because of the orthonormality of E 1 and E 2, we have the reverse identity Example: L = E 2 LE 1. (1.4) Let e i be the ith basis vector in the orthonormal frame E, then ( e i ) E is the ith unit vector in R 3. Consider an orthonormal frame E : R 3 E 3 as a linear transform, then E E = I 3. Consider the dot product as a linear transformation, L : E 3 R, L v = w v. Let E be an orthonormal frame for E 3. Then w v = w Ev = w e 1 w e 2 w e 3 v = w T v where w is the representation of w in E. Therefore, the coordinate representation of L is w T. Consider the cross product as a linear transformation, L : E 3 E 3, L v = w v. Let E be an orthonormal frame for E 3. Then w v = w Ev = w e 1 w e 2 w e 3 v. The coordinate representation of the cross product, denoted by ŵ, is therefore the 3 3 skew symmetric matrix below: ŵ = E 0 w 3 w 2 w e 1 w e 2 w e 3 = w 3 0 w 1. (1.5) w 2 w 1 0 4
5 All 3 3 matrices of the form above form a group called so(3). We denote the inverse operation of cross product as : so(3) R 3, i.e., given A so(3), A = 0 a 3 a 2 a 3 0 a 1 a 2 a 1 0 A is defined as A = a 1 a 2 a 3. Clearly, for any w R 3, (ŵ) = w. A list of useful identities involving the cross product are given below: v v = 0, ˆvv = 0 (1.6a) ˆv = ˆv T ( v is skew-symmetric) (1.6b) v w = w v, ˆvw = ŵv (1.6c) v ( w ) = w v ( v w)i, ˆvŵ = wv T (v T w)i 3 (1.6d) ( v w) = w v v w, ˆvw = wv T vw T (1.6e) v ( v ( v )) = v 2 v, v 3 = v v v = v 2 v (1.6f) If v = 1, ( v ) 4k = ( v ) 2 = v ( v ), ( v ) 4k 1 = ( v ), ( v ) 4k 2 = ( v ) 2, ( v ) 4k 3 = ( v ), v 4k = v 2, v 4k 1 = v, v 4k 2 = v 2, v 4k 3 = v, k = 1, 2,.... (1.6g) Coordinate Transformation Given a vector v V. Let E a and E b be two orthonormal frames of V. Then v may be represented in either coordinate: v = E a v a = E b v b. (1.7) The two representations v a and v b are related by The linear transformation v a = E ae b v b. (1.8) R ab := E ae b (1.9) is a 3 3 matrix that converts the representation in E b to E a. It is easy to verify that R ab is orthogonal, i.e., Rab 1 = RT ab, and Rab 1 = R ba. Given a linear transform L : V V, it can be similarly represented in either E a or E b : L = E a L a E a = E b L b E b. 5
6 The relationship between L a and L b is then where we have use the identity R 1 ab = RT ab = R ba. Example: L a = R ab L b R ba, (1.10) Dot product: The dot product is invariant under coordinate transformation: w v = w T a v a = w T b v b. Cross product: The tranformation of the cross product is given by (1.10): v a = 1.3 Rotation Group SO(3) R ab v b = R ab v b R ba Interpretation of Coordinate Transformation between Orthonormal Frames The coordinate transformation matrix R ab SO(3) has various interpretations: R ab changes the representation of a vector from E b to E a : v a = R ab v b. R ab changes the representation of a linear transform from E b to E a : L a = R ab L b R ba. R ab consists of the cosines of angles between axes in E a and E b (it is therefore also called the direction cosine matrix): e a1 e b1 e a1 e b2 e a1 e b3 R ab = EaE b = e a2 e b1 e a2 e b2 e a2 e b3. e a3 e b1 e a3 e b2 e a3 e b3 The (i, j)th entry of R ab is cos θ ij where θ ij is the angle between e ai and e bj. R ab is the representation of E b in E a, i.e., R ab = (E b ) a. R ab rotates E a to E b, represented in either E a or E b. To be specific, let R be the rotation operator transforming E a to E b, i.e., E b = RE a. (1.11) Then the representation of R in E a is and the representation of R in E b is (R) a = E a(e b E a)e a = R ab. (R) b = E b (E b E a)e b = R ab. 6
7 In the last interpretation of R ab, as a rotation of frames, we introduce the concept of a rotation operator. To be precise, an operator R : E 3 E 3 is a rotation if for any orthonormal frame E, RE is also an orthonormal frame. An immediate consequence of the definition is that R is orthogonal, i.e., RR = R R = I. The coordinate transformation matrix R ab is orthogonal (i.e., R T abr ab = I) and detr ab = 1 (due to the right-handed coordinate system). Furthermore, products of such matrices retain the same properties. These matrices form a group called the special orthogonal group with the group action given by the matrix multiplication. Since we are dealing with the Euclidean space, the dimension is three. This group is therefore denoted by SO(3). Due to the rotation interpretation, SO(3) is also called the rotation group. In the robotic literature, e.g.,?,?,?, the perspective is inertial-centric, i.e., all coordinate frames eventually refer to the inertial frame. Therefore, orientation of a rigid body is usually denoted by R ob, the representation of the body frame in the inertial frame. For example, a common representation of the end effector tool frame is n, o, a (normal-open-approach, see Fig. 1.3). However, for the spacecraft dynamics literature, e.g.,?,?, the perspective is typically body-centric. In that case, the orientation, also called the attitude, of the spacecraft is usually denoted by R bo, the representation of the inertial frame in the body frame. This results in slightly different forms of the kinematic equations, as we shall see later. Figure 1.3: Orthonormal frame based on the normal-open-approach (noa) convention for paralleljaw gripper Example: Let E b be E a rotated about e a3 over an angle θ (see Fig. 1.4). Then Since R ab = (E b ) a, we have Similarly, for rotation about e a1, e b1 = cos θ e a1 + sin θ e a2, e b2 = sin θ e a1 + cos θ e a2. R ab = R ab = cos θ sin θ 0 sin θ cos θ c s 0 s c. where c denotes cos θ and s denotes sin θ. For rotation about e a2, R ab = c 0 s s 0 c. 7
8 1.3.2 Representation of Rotation Operator: Euler-Rodrigues Formula We now consider a special type of operator, one that rotates a frame about a given unit vector k over an angle θ. By construction, such an operator is clearly a rotation since the operator applied to any orthonormal frame would also result in an orthonormal frame. We first find an algebraic representation of this operator. Let R be a rotation about a unit vector k over an angle θ. Consider an arbitrary vector v in E 3. As shown in Fig. 1.5(a), R v may be decomposed as the sum of the projection of v on k and an orthogonal component, (R v) : R v = ( k v) k + (R v). (1.12) The top view of the cone in Fig. 1.5(a) is a circle formed by the tip of v rotating about k, as in Fig. 1.5(b). Then (R v) may be decomposed as Substituting back into (1.12), we get (R v) = sin θ k v cos θ k ( k v). (1.13) R v = ( k k + sin θ k cos θ k ( k )) v. Since v is arbitrary, we obtain the Euler-Rodrigues Formula in the operator form: R = ( k k + sin θ k cos θ k ( k )) = I + sin θ k +(1 cos θ) k ( k ) (1.14) where the last equality follows from (1.6d). This equation may also be represented in an orthonormal frame as: R = I + sin θˆk + (1 cos θ)ˆk 2, (1.15) where k is the coordinate representation of k. Due to the body-centric perspective mentioned earlier, in the spacecraft literature, this expression is more commonly written as R T = I sin θˆk + (1 cos θ)ˆk 2, where R T is considered to be the spacecraft attitude Euler s Rotation Theorem It is easy to verify that R given by the Euler-Rodrigues formula (1.15) indeed belongs to SO(3). We now consider the converse: given R SO(3), does there exist a corresponding k and θ? If so, Figure 1.4: R ab as (E b ) a in rotation about e 3. 8
9 are they unique? In other words, is (1.15) a complete parameterization of SO(3)? To answer these questions, we will show that k and θ may be solved directly from (1.15) for any R SO(3). From (1.15), it is straightforward to show that cos θ = 1 (trr 1). (1.16) 2 By manipulating the (i, i)th element of R, we can find an expression for the ith element of k: k i = ±( 2R i,i trr + 1 ) 1 2. (1.17) 3 trr Note that there are two possible solutions of the axis of rotation, corresponding to the two possible directions of rotation to achieve the same end result. The above approach breaks down only when trr = 3, i.e., R = I. In this case, k is an arbitrary unit vector and θ = 0. Once k is found, we can find sin θ from the difference between R and R T : The rotational angle may then be found from sin θ = 1 2 kt (R R T ). (1.18) θ = atan2( 1 2 kt (R R T ), 1 (trr 1)). (1.19) 2 There are two solutions, corresponding to the two solutions of k. Note that to determine the quadrant of θ, the atan2 function is used (requiring both sine and cosine). Since every R SO(3) can be represented by (k, θ) (and ( k, θ)), and every (k, θ) generates a rotation matrix through the Euler-Rodrigues formula (1.15), (k, θ) completely parameterizes SO(3). This is commonly referred to as the equivalent-axis/angle representation of the rotation group. This representation has also been called the Euler s Theorem on Rotation which states that every rigid body rotation can be represented as a single rotation about an equivalent axis. Note that k is also the eigenvector of R corresponding to the eigenvalue 1. This makes intuitive sense since rotation of k about itself is just k. As we shall see in the next section, the non-zero eigenvalues of R are of the form e ±jθ. This provides an alternate, but more computationally expensive, method of computing (k, θ) from R. In the case that R = I, all three eigenvalues are 1. Therefore, k is arbitrary and θ = 0. (a) Rotation of v about k over angle θ (b) Top view Figure 1.5: Derivation of Euler-Rodrigues formula in representing a rotation operator R 9
10 1.3.4 Matrix Exponential Formula In this section, we show that rotation about a unit vector can also be represented as an exponential operator by using the Cayley-Hamilton Theorem?,?. This is a convenient parameterization that we will use throughout the book. Consider the 3 3 matrix given by the matrix exponential exp(ˆkθ). From the Cayley-Hamilton Theorem (a square matrix satisfies its own characteristic equation) and the infinite series expansion of the exponential function, we have the following matrix polynomial expression for exp(ˆkθ): exp(ˆkθ) = a 0 I 3 + a 1ˆk + a2ˆk2. (1.20) The eigenvalues of ˆk are {0, ±j}. Evaluating (1.20) along the eigenvectors, we have 1 = a 0 e jθ = a 0 + a 1 j a 2 (1.21) e jθ = a 0 a 1 j a 2. These equations can be used to solve for (a 0, a 1, a 2 ): a 0 = 1, a 1 = sin θ, a 2 = (1 cos θ). (1.22) Substituting back to (1.20), we have exactly the Euler-Rodrigues Formula (1.15). This means that every R SO(3) may be written as a matrix exponential exp(ˆkθ) where k and θ are solved from (1.17) and (1.19). The rotation operator, R, may also be represented as a coordinate-free exponential operator R = exp(θ k ), (1.23) where the exponential operator is interpreted in the infinite series sense and is equivalent to (1.14). Of course, when R is represented in a coordinate frame, we recover the matrix exponential: where k is k represented in E. E RE = exp( kθ) (1.24) Representations of rotation group Rotation group consists of 3 3 matrix subject to 6 orthonormality constraints. From Euler s Theorem, we can also represent it in terms (k, θ) (subject to the directions of the rotation axis and rotation), which contains 4 parameters and 1 constraint (k is a unit vector). This is sometimes called the equivalent-axis/angle representation. It is natural to ask if there are other possible representations SO(3). In this section, we will examine several common representations, including Euler parameters (also known as quaternion, consisting of sine and cosine of the half angle), Euler- Rodrigues parameters (also known as Gibb s vector, consisting of the tangent of the half angle), and all possible types of Euler angles (consisting of angles of three principal-axis rotations). 10
11 Euler parameters (Quaternions) Euler parameters consist of a scalar part, q 0, and a vector part q v R 3. They may be defined through equivalent axis and angle: q 0 = cos ( ) ( ) θ θ, q v = sin k. (1.25) 2 2 From this definition, it follows that q q v 2 = 1. (1.26) Therefore, (q 0, q v ) is a four-parameter representation of SO(3) with one constraint. The Euler parameters represented as a 4 1 vector, q = q0 q v, is also called unit quaternion. The constraint then becomes the unit norm constraint: q = 1. Given (q 0, q v ), the corresponding rotation matrix R can be found from the Euler-Rodrigues Formula: Conversely, given R SO(3), we can find q 0 R(q) = I 3 + 2q 0ˆq v + 2ˆq 2 v. (1.27) If q 0 0, then q v may be found similar to equivalent axis: If q 0 = 0, then q 0 = ± 1 2 trr + 1. (1.28) q v = ( ) R R T. (1.29) R + I 2 4q 0 = q v q T v, (1.30) which can be used to find q v (e.g., by factorizing (R + I)/2 or finding the eigenvector of (R + I)/2 that corresponds to the eigenvalue 1). Vector quaternion q v itself may be used to represent SO(3). This is a three-parameter representation with no constraint. In this case, R, for a given q v R 3, is given by (1.27) with q 0 replaced by (1 q v 2 ) 1 2 : Given R SO(3), q v may be found as R(q v ) = I 3 + 2(1 q v 2 ) 1 2 ˆqv + 2ˆq 2 v. (1.31) q v = ( R R T 2 trr + 1 If trr = 1, then the alternative formula (1.30) should be used. 11 ). (1.32)
12 Euler-Rodrigues Parameters (Gibb s Vector) Another three-parameter representation is the Euler-Rodrigues parameters which may be defined using equivalent axis and angle or unit quaternion: g = tan The origin of Euler-Rodrigues parameters is from the identity ( ) θ k = q v. (1.33) 2 q 0 (exp(ˆkθ) I) = ĝ(exp(ˆkθ) + I). (1.34) It is a straightforward exercise to show that R is related to g by and g may be obtained from R using Note that when trr 1, g. ĝ R = I g ĝĝ 1 + g 2, (1.35) g = ± (R RT ) trr + 1. (1.36) Euler Angles By far the most common three parameter representation is Euler angles. An arbitrary rotation may be decomposed as the concatenation of three principal axis (coordinate axis) rotations. The three rotation angles, called (classic) Euler angles, together with the specified axes, then completely parameterize any rotation matrix. As an example, take the common yaw-pitch-roll (also called 321 or zyx) Euler Angles representation of a frame E 3 represented in the refererence frame E 0. The frame E 3 may be obtained from E 0 through three principal-axis rotations. First generate E 1 by rotating E 0 about its z-axis over the roll angle, φ. The corresponding orientation matrix is R 01 = E 0 E 1 = exp(ẑφ), z = 0, 0, 1 T. Then generate E 2 by rotating E 1 about its y-axis over the pitch angle, θ. The corresponding rotation matrix is R 12 = E 1 E 2 = exp(ŷθ), y = 0, 1, 0 T. Finally, obtain E 3 by rotating E 2 about its x-axis over the yaw angle, ψ. The corresponding rotation matrix is R 23 = E 2 E 3 = exp( xψ), x = 1, 0, 0. The overall rotation is then In the coordinate-free form, we have R 03 = R 01 R 12 R 23 = exp(ẑφ)exp(ŷθ)exp( xψ). (1.37) R 03 = E 3 E 0 = E 3 E 2 E 2 E 1 E 1 E 0 = exp(ψ x )exp(θ y )exp(ψ z ). (1.38) which transforms E 0 to E 3. In general, for any R SO(3) and three unit vectors in R 3, (a 1, a 2, a 3 ), a 2 not collinear with either a 1 or a 3, R may be written as R = R 01 R 12 R 13 (1.39) 12
13 where R i 1,i = exp(â i β i ) (1.40) corresponds to the rotation of E i 1 about a i over an angle β i. The triplet (β 1, β 2, β 3 ) is called the Euler-Angle representation of R with the corresponding rotation axes (a 1, a 2, a 3 ). If a i is a coordinate axis, i.e., x, y, or z, then (β 1, β 2, β 3 ) are called the classic Euler angles. There are 12 possible classic Euler angles, (x, y, x), (x, y, z), (x, z, x), (x, z, y), (y, x, y), (y, x, z), (y, z, x), (y, z, y), (z, x, y), (z, x, z), (z, y, x), (z, y, z), where (z, y, x) is the yaw-pitch-roll representation, and (z, x, z) is a natural representation for a gyroscope. A variation of classic Euler angles may have a i pointing in the negative direction of a coordinate axis, and the coordinate axes may be redefined (e.g., x becomes y, etc.), for example, the tool frame representation of the original Unimate controller (for PUMA robots) is a variant of the 313 Euler angles: R 03 = exp(ẑβ 1 ) exp(ŷβ 2 )exp(ẑβ 3 ), which means that (x, y, z) axes in E 1 becomes (y, z, x) before the next rotation (about the x axis, or z axis of E 1 ). Euler angles for a given R SO(3) may be found by simple algebra. For example, the rollpitch-yaw Euler angles are related to the orientation by multiplying the three rotation matrices in (1.37): R = exp(ẑφ)exp(ŷθ)exp( xψ). = c 1 c 2 s 1 c 3 + c 1 s 2 s 3 s 1 s 3 + c 1 s 2 c 3 s 1 c 2 c 1 c 3 + s 1 s 2 s 3 c 1 s 3 + s 1 s 2 c 3 s 2 c 2 s 3 c 2 c 3 where the short hand notation c i denotes cos β i and s i denotes sin β i, i = 1, 2, 3. Given R, the Euler angles may be readily computed: β 2 = sin 1 R (3,1) or sin 1 R (3,1) + π β 1 = tan 1 (R (1,2), R (1,1) ) or tan 1 (R (1,2), R (1,1) ) + π β 3 = tan 1 (R (3,2), R (3,3) ) or tan 1 (R (3,2), R (3,3) ) + π where R (i,j) denotes the (i, j)th element of R and sin 1 R (3,1) is restricted to π/2, π/2. Note that in general there are two solutions for each R, except for β 2 = ± π where the two solutions 2 merge. We shall see that this corresponds to the singularity of the representation (see Section 1.4 below). 1.4 Differential Kinematics on SO(3) We have so far described a rigid body fixed in space; now let us consider the motion of this rigid body. First consider the rotation of a vector v about a unit vector k over a small angle θ: exp(θ k ) v = (I + sin θ k +(1 cos θ) k ( k )) v v + θ k v. (1.41) The difference between the rotated v and v is therefore orthogonal to v. 13
14 Now consider E = e 1 e 2 e 3 to be an orthonormal frame attached to a rigid body. Suppose that over a time interval δt, E rotates to E = e 1 e 2 e 3. If δt is small, the angle of rotation would also be small. Then, as argued above, e i e i would be approximately orthogonal to e i. Therefore, E is approximately given by e 1 = e 1 + δt(a 12 e 2 + a 13 e 3 ) e 2 = e 2 + δt(a 21 e 1 + a 23 e 3 ) (1.42) e 3 = e 3 + δt(a 31 e 1 + a 32 e 2 ) for some constants a ij. To ensure E SO(3), up to order δt, we need to have Define We can then write (1.43) as a 21 = a 12, a 32 = a 23, a 13 = a 31. E E = δte ω = a 23 a 31 a ω 3 ω 2 ω 3 0 ω 1 ω 2 ω 1 0 = δte ω. (1.43) As δt 0, (E E)/δt becomes de, and we obtain the differential kinematics equation for a rigid body as de = E ω = ω E, (1.44) where ω is the angular velocity vector that characterizes the instantaneous evolution of E, and ω is the representation of ω in E. The collection of all 3 3 matrices of the form ω is called so(3), which may be considered as the tangent of SO(3). Using (1.44), we now derive the evolution of the rotation matrix R ab = E a E b. Denote by ω i the angular velocity of E i, i = a, b. We then have dr ab = ( ω a E a ) E b + E a( ω b E b ) = ( ω a ) a R ab + ( ω b ) a R ab = ( ω b ω a ) a R ab. Define the relative angular velocity between E a and E b by ω b/a := ω b ω a. (1.45) Denoting ( ω b/a ) a by (ω b/a ) a, the differential kinematics equation for the rotation matrix can be written as: dr ab = (ω b/a ) a R ab, (1.46) 14
15 which may be also written in an equivalent form as dr ab = R ab (ω b/a ) b. Given R SO(3), we may write its derivative as Ṙ = ˆωR. (1.47) In this case, R may be considered as the orientation of a rigid body with respect to the inertial frame and ω is the angular velocity of the body with respect to the inertial frame, respresented in the inertial frame. As mentioned earlier, the spacecraft literature is body-centric and usually uses R ba for orientation. In that case, the differential kinematics is usually written as dr ba = (ω b/a ) b R ba = R ba (ω b/a ) a, where we have used the fact that ω b/a = ω a/b. Consider the exponential representation of R ab = exp(ˆkθ). Suppose k is fixed and only θ varies with time, then dr ab can be computed directly from the Euler-Rodrigues formula: dr ab = ˆk θr ab. (1.48) In this case, the angular velocity (ω b/a ) a = k θ. We next consider the differentiation of a vector. Let v be a vector with representations v a and v b in E a and E b, respectively. By direct differentiation of (1.8), we have dv a = d(r abv b ) = Ṙabv b + R ab v b = (ω b/a ) a v a + R ab v b. (1.49) If v is a fixed vector in E b, then v b = 0 and v a = (ω b/a ) a v a. Now consider the differentiation of a linear transform. Let L : SO(3) SO(3) be a linear transform with representations L a and L b in E a and E b, respectively. Differentiate (1.10), we obtain dl a = d(r abl b R ba ) = (ω b/a ) a R ab L b R ba R ab L b R ba (ω b/a ) a + R ab Lb R ba = (ω b/a ) a L a L a (ω b/a ) a + R ab Lb R ba. (1.50) We shall introduce the inertia of a rigid body, J, as a linear transform in Section??. Let E b be a fixed orthonormal frame attached to the body. Assuming the mass property remains constant, then J b = 0, and J a = (ω b/a ) a J a J a (ω b/a ) a. 15
16 1.4.1 Differential Kinematics for Different Representations of SO(3) Let p be a R l representation of R SO(3). The time derivative of p is of the following general form: dp = J p(p)ω, (1.51) where J p R l 3 is called the representation Jacobian. If J p (p) loses rank, p cannot be solved instantaneously. This is called a singularity of the representation. Such singularities are mathematical in nature as a deficiency in the local representation of SO(3) with p. It is not a physical singularity in the sense that the rigid body cannot move in certain direction. To calculate the Jacobian, we can just differentiate the kinematics equations in Section and use (1.47): ω = (R T Ṙ). (1.52) For equivalent axis and angle representation, the differential kinematics is given by (you are asked to verified this as a homework): θ k = k T 1 2 ( k + cot θ 2 k 2 ) The Jacobian is full rank except at θ = 0 when it becomes unbounded. For the unit quaternion, the differential kinematics is q0 q v = 1 2 q T v q 0 I ˆq v ω. (1.53) ω. (1.54) Note that J T J = 1 4 (1 + q2 0)I in this case, which means that it is never singular! For this reason, unit quaternion is a popular representation. For the vector quaternion, the differential kinematics is q v = 1 2 The Jacobian is singular if and only if q v = 1. For Gibb s vector, we have ( 1 q v 2 q v ) ω. (1.55) β = 1 2 (I β + ββ T )ω. (1.56) The Jacobian is full rank except when β = (which is equivalent to q v = 1). For the yaw-pitch-roll (321) Euler Angle, we can apply (1.52) to obtain ω = s 1 θ2 + c 1 c 2 θ3 c 1 θ2 + s 1 c 2 θ3 θ 1 s 2 θ3 = which has singularities at cos β 2 = 0, as indicated before s 1 c 1 c 2 0 c 1 s 1 c s 2 θ. (1.57)
17 1.5 Euclidean Group SE(3) The rigid body orientation is represented by an orthonormal frame, E, attached to the body. For the position of the body, we need to additionally designate the origin of the frame, O. Together (O, E) represent the position and orientation of the body, and we call it an Euclidean frame. Mathematically, O is a point and may be considered as a vector from some reference point. As such, if O a and O b are two points, then p ab = O b O a is defined as vector from O b to O a. Given two rigid bodies with corresponding Euclidean frames (O a, E a ) and (O b, E b ). The relative position and orientation is p ab and E b Ea, which may be represented in E a as (p ab, R ab ) where p ab = ( p ab ) a and R ab = EaE b. A common representation of (p, R), p R 3, R SO(3), is a 4 4 homogeneous transformation R p H =. (1.58) 0 1 Such matrices form a non-commutative group called the special Euclidean group of order 3, SE(3), with the group operation given by the matrix multiplication. The inverse of H is given by R H 1 T p =. 0 1 Consider a vector r b attached to O b. Seen from O a, the vector becomes Representing in E a we have This may be written as where r a = r b + p ab. r a = R ab r b + p ab. ra 1 H ab := = H ab rb 1 Rab p ab 0 1, (1.59). (1.60) Therefore H ab SE(3) plays a similar role as R ab in SO(3): transforming a vector in body b and represented in E b to a vector in body a and represented in E a. The following property of H ab is straightforward to verify: H ab H bc = H ac, H 1 ab = H ba, H aa = I Matrix Exponetial Formula For R SO(3), we can represent it as a matrix exponential R = exp( kθ) where k is the equivalent axis and θ the equivalent angle. Does H SE(3) have a similar matrix exponential representation and interpretation? Let k ξ =, k R 3, k = 1, v R 3. v 17
18 Define ξ = k v 0 0. (1.61) All 4 4 matrices of the form above form a group, called se(3), which as we shall see later may be considered as the tangent of SE(3). As in the SO(3) case, we can apply the Cayley-Hamilton Theorem to evaluate exp( ξθ): exp( ξθ) exp( kθ) (I exp( kθ)) kv + θkk = T v. (1.62) 0 1 Equating this expression with (1.58), we see that (k, θ) are just the equivalent axis and angle of R, i.e., R = exp( kθ) and the vector v is related to p through ((I R) k + θkk T )v = p. (1.63) It can be shown that the matrix ((I R) k + θkk T ) is invertible if and only if θ = 0. Therefore, if θ 0, v is determined uniquely from p. When θ = 0, R = I and k is arbitrary. We choose k = p p and v to be collinear with k. Then as θ 0, ((I R) k + θkk T )v θv = p. The matrix exponential formula for rotation (1.24) may be interpreted as a rotation about a unit axis k over an angle θ. The matrix exponential expression for Euclidean motion (1.62) also has a intuitive geometric interpretation. Consider the interpretation of (p, R) SE(3) as a transformation of a vector r b to r a as in (1.59). Apply (1.63), then r a = R ab r b + p ab = R ab r b + ((I R ab ) k + θkk T )v = ˆv + R ab (r b kv) + (k T v)θk. This may be visualized as a screw motion of the vector r b kv rotating and translating about k as shown in Figure xxx. The unit vector k is the screw axis, θ is the screw magnitude, and k T vθ is the pitch Differential Kinematics on SE(3) Similar to the differential kinematics on SO(3), (1.46), we can propagate in SE(3) by differentiating H ab in (1.60): Ṙab ṗ Ḣ ab = ab 0 0 ( (ω = a/b ) )a R ab ṗ ab 0 0 ( (ω = a/b ) )a ṗ ab ((ω a/b ) )a p ab Rab p ab. (1.64) Define ṗab ((ω (V a/b ) a = a/b ) )a p ab ((ω a/b ) )a 18. (1.65)
19 We then have the generalization of (1.46) to SE(3): Ḣ ab = (V a/b ) a H ab. (1.66) Note that the linear velocity portion (V a/b ) a is R ab d (R bap ab ), or the derivative of p ab in the B frame represented in the A frame. We can also write Ḣ ab = H ab (V a/b ) b (1.67) with (V a/b ) b = Rba ṗ ab (ω a/b ) b. (1.68) The linear velocity portion (V a/b ) b is now the derivative of p ab in the A frame represented in the B frame. The 6 1 vectors (V a/b ) a and (V a/b ) b are called spatial velocities (in A and B frames, respectively), which are transformed according to: Rab ˆp (V a/b ) a = ab R ab (V 0 R a/b ) b. (1.69) ab The transformation matrix above is called the adjoint transformation and denoted by Ad Hab. Note that Ad 1 H ab = Ad H 1 = Ad Hba. ab In summary, H ab trasnforms rigid body configuration from frame A to frame B while Ad Hab transforms the spatial velocity from frame A to frame B. As another perspective, let A and B be two Euclidean frames attached to the same rigid body. From (1.49), ω b = ω a, v b = ω a p ab + v a. (1.70) Representing ( ω b, v b ) in E b and ( ω a, v a ) in E a, we have ωb v b = R ba 0 R baˆp ab R ba ωa v a. (1.71) We denote the transformation matrix by Φ ba which is the same as Ad T H ab. We can differentiate (1.71) once more to obtain the acceleration propagation: ωb R = ba 0 ωa 0 + v b R baˆp ab R ba v a R. (1.72) ba ˆω a p ab ω a In the absence of externally applied force and torque, the power is conserved within the rigid body; therefore, T T ωa τa ωb τb =. (1.73) Using (1.71), we obtain the dual relationship: v a τa f a f a = Φ T ba v b τb f b f b. (1.74) 19
20 1.6 Distance Metrics on SO(3) and SE(3) For planning and control, it is important to choose a distance metric on SO(3) and SE(3). First consider SO(3). Let R 1 and R 2 be two SO(3) matrices. We may consider R 1 R 2 as the orientation error, but R 1 R 2 is no longer in SO(3). We can choose ρ(r 1, R 2 ) = β(r 1 ) β(r 2 ) (1.75) where β is any representation of SO(3). Another possibility is to form the relative orientation R T 1 R 2 and use the metric ρ(r 1, R 2 ) = β(i) β(r1 T R 2 ). (1.76) Note that if β is a 3-parameter representation, β(i) = 0. common metrics on SO(3): The metric for the distance portion of SE(3) may be any norm on R 3 : Derivatives of metrics Kinematic control Some possibilities: Some norm on R R d or R T R d I. ρ p (p 1, p 2 ) = p 1 p 2. Some norm on p(r) p(r d ) or p(r T R d ) p(i), where p is any vector representation of SO(3). Let E = R T R d. 1. e R = 1 2 tr((e I)T (E I)) = 1 2 E I F (Frobenus norm) =... = 4 q v(e) 2. ė R = 2 sin φ φ = 2 sin φk T ω = q T v q 0 ω e R = 1 2 tr((e 1 2 I) T (E 1 2 I)) = 4(1 q0 (E)), ė R = 2 sin φ 2 kt ω = 2q T v ω. e R = 1 2 p(e) 2 p(e) is any 3-parameter representation of E. ė R = p(e) T J p ω, J p = representation Jacobian. 20
Position and orientation of rigid bodies
Robotics 1 Position and orientation of rigid bodies Prof. Alessandro De Luca Robotics 1 1 Position and orientation right-handed orthogonal Reference Frames RF A A p AB B RF B rigid body position: A p AB
More informationRobotics & Automation. Lecture 03. Representation of SO(3) John T. Wen. September 3, 2008
Robotics & Automation Lecture 03 Representation of SO(3) John T. Wen September 3, 2008 Last Time Transformation of vectors: v a = R ab v b Transformation of linear transforms: L a = R ab L b R ba R SO(3)
More informationRidig Body Motion Homogeneous Transformations
Ridig Body Motion Homogeneous Transformations Claudio Melchiorri Dipartimento di Elettronica, Informatica e Sistemistica (DEIS) Università di Bologna email: claudio.melchiorri@unibo.it C. Melchiorri (DEIS)
More informationMCE/EEC 647/747: Robot Dynamics and Control. Lecture 2: Rigid Motions and Homogeneous Transformations
MCE/EEC 647/747: Robot Dynamics and Control Lecture 2: Rigid Motions and Homogeneous Transformations Reading: SHV Chapter 2 Mechanical Engineering Hanz Richter, PhD MCE503 p.1/22 Representing Points, Vectors
More informationRotational Kinematics. Description of attitude kinematics using reference frames, rotation matrices, Euler parameters, Euler angles, and quaternions
Rotational Kinematics Description of attitude kinematics using reference frames, rotation matrices, Euler parameters, Euler angles, and quaternions Recall the fundamental dynamics equations ~ f = d dt
More informationRobotics, Geometry and Control - Rigid body motion and geometry
Robotics, Geometry and Control - Rigid body motion and geometry Ravi Banavar 1 1 Systems and Control Engineering IIT Bombay HYCON-EECI Graduate School - Spring 2008 The material for these slides is largely
More informationPosition and orientation of rigid bodies
Robotics 1 Position and orientation of rigid bodies Prof. Alessandro De Luca Robotics 1 1 Position and orientation right-handed orthogonal Reference Frames RF A A z A p AB B RF B z B x B y A rigid body
More informationDifferential Kinematics
Differential Kinematics Relations between motion (velocity) in joint space and motion (linear/angular velocity) in task space (e.g., Cartesian space) Instantaneous velocity mappings can be obtained through
More informationLecture Note 4: General Rigid Body Motion
ECE5463: Introduction to Robotics Lecture Note 4: General Rigid Body Motion Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture
More informationChoice of Riemannian Metrics for Rigid Body Kinematics
Choice of Riemannian Metrics for Rigid Body Kinematics Miloš Žefran1, Vijay Kumar 1 and Christopher Croke 2 1 General Robotics and Active Sensory Perception (GRASP) Laboratory 2 Department of Mathematics
More informationRobotics & Automation. Lecture 06. Serial Kinematic Chain, Forward Kinematics. John T. Wen. September 11, 2008
Robotics & Automation Lecture 06 Serial Kinematic Chain, Forward Kinematics John T. Wen September 11, 2008 So Far... We have covered rigid body rotational kinematics: representations of SO(3), change of
More informationLinear Algebra & Geometry why is linear algebra useful in computer vision?
Linear Algebra & Geometry why is linear algebra useful in computer vision? References: -Any book on linear algebra! -[HZ] chapters 2, 4 Some of the slides in this lecture are courtesy to Prof. Octavia
More informationLecture Notes - Modeling of Mechanical Systems
Thomas Bak Lecture Notes - Modeling of Mechanical Systems February 19, 2002 Aalborg University Department of Control Engineering Fredrik Bajers Vej 7C DK-9220 Aalborg Denmark 2 Table of Contents Table
More informationMobile Robotics 1. A Compact Course on Linear Algebra. Giorgio Grisetti
Mobile Robotics 1 A Compact Course on Linear Algebra Giorgio Grisetti SA-1 Vectors Arrays of numbers They represent a point in a n dimensional space 2 Vectors: Scalar Product Scalar-Vector Product Changes
More informationKinematics. Chapter Multi-Body Systems
Chapter 2 Kinematics This chapter first introduces multi-body systems in conceptual terms. It then describes the concept of a Euclidean frame in the material world, following the concept of a Euclidean
More informationRigid Geometric Transformations
Rigid Geometric Transformations Carlo Tomasi This note is a quick refresher of the geometry of rigid transformations in three-dimensional space, expressed in Cartesian coordinates. 1 Cartesian Coordinates
More informationLinear Algebra & Geometry why is linear algebra useful in computer vision?
Linear Algebra & Geometry why is linear algebra useful in computer vision? References: -Any book on linear algebra! -[HZ] chapters 2, 4 Some of the slides in this lecture are courtesy to Prof. Octavia
More informationVectors in Three Dimensions and Transformations
Vectors in Three Dimensions and Transformations University of Pennsylvania 1 Scalar and Vector Functions φ(q 1, q 2,...,q n ) is a scalar function of n variables φ(q 1, q 2,...,q n ) is independent of
More informationAppendix Composite Point Rotation Sequences
Appendix Composite Point Rotation Sequences A. Euler Rotations In Chap. 6 we considered composite Euler rotations comprising individual rotations about the x, y and z axes such as R γ,x R β,y R α,z and
More information(3.1) a 2nd-order vector differential equation, as the two 1st-order vector differential equations (3.3)
Chapter 3 Kinematics As noted in the Introduction, the study of dynamics can be decomposed into the study of kinematics and kinetics. For the translational motion of a particle of mass m, this decomposition
More informationRotational motion of a rigid body spinning around a rotational axis ˆn;
Physics 106a, Caltech 15 November, 2018 Lecture 14: Rotations The motion of solid bodies So far, we have been studying the motion of point particles, which are essentially just translational. Bodies with
More informationRigid Geometric Transformations
Rigid Geometric Transformations Carlo Tomasi This note is a quick refresher of the geometry of rigid transformations in three-dimensional space, expressed in Cartesian coordinates. 1 Cartesian Coordinates
More informationEE731 Lecture Notes: Matrix Computations for Signal Processing
EE731 Lecture Notes: Matrix Computations for Signal Processing James P. Reilly c Department of Electrical and Computer Engineering McMaster University September 22, 2005 0 Preface This collection of ten
More informationIn this section of notes, we look at the calculation of forces and torques for a manipulator in two settings:
Introduction Up to this point we have considered only the kinematics of a manipulator. That is, only the specification of motion without regard to the forces and torques required to cause motion In this
More informationInverse differential kinematics Statics and force transformations
Robotics 1 Inverse differential kinematics Statics and force transformations Prof Alessandro De Luca Robotics 1 1 Inversion of differential kinematics! find the joint velocity vector that realizes a desired
More information. D CR Nomenclature D 1
. D CR Nomenclature D 1 Appendix D: CR NOMENCLATURE D 2 The notation used by different investigators working in CR formulations has not coalesced, since the topic is in flux. This Appendix identifies the
More informationClassical Mechanics III (8.09) Fall 2014 Assignment 3
Classical Mechanics III (8.09) Fall 2014 Assignment 3 Massachusetts Institute of Technology Physics Department Due September 29, 2014 September 22, 2014 6:00pm Announcements This week we continue our discussion
More informationDYNAMICS OF PARALLEL MANIPULATOR
DYNAMICS OF PARALLEL MANIPULATOR PARALLEL MANIPULATORS 6-degree of Freedom Flight Simulator BACKGROUND Platform-type parallel mechanisms 6-DOF MANIPULATORS INTRODUCTION Under alternative robotic mechanical
More informationDS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra.
DS-GA 1002 Lecture notes 0 Fall 2016 Linear Algebra These notes provide a review of basic concepts in linear algebra. 1 Vector spaces You are no doubt familiar with vectors in R 2 or R 3, i.e. [ ] 1.1
More informationVectors Coordinate frames 2D implicit curves 2D parametric curves. Graphics 2008/2009, period 1. Lecture 2: vectors, curves, and surfaces
Graphics 2008/2009, period 1 Lecture 2 Vectors, curves, and surfaces Computer graphics example: Pixar (source: http://www.pixar.com) Computer graphics example: Pixar (source: http://www.pixar.com) Computer
More informationMinimal representations of orientation
Robotics 1 Minimal representations of orientation (Euler and roll-pitch-yaw angles) Homogeneous transformations Prof. lessandro De Luca Robotics 1 1 Minimal representations rotation matrices: 9 elements
More information12. Rigid Body Dynamics I
University of Rhode Island DigitalCommons@URI Classical Dynamics Physics Course Materials 015 1. Rigid Body Dynamics I Gerhard Müller University of Rhode Island, gmuller@uri.edu Creative Commons License
More information, respectively to the inverse and the inverse differential problem. Check the correctness of the obtained results. Exercise 2 y P 2 P 1.
Robotics I July 8 Exercise Define the orientation of a rigid body in the 3D space through three rotations by the angles α β and γ around three fixed axes in the sequence Y X and Z and determine the associated
More informationReview of Linear Algebra
Review of Linear Algebra Definitions An m n (read "m by n") matrix, is a rectangular array of entries, where m is the number of rows and n the number of columns. 2 Definitions (Con t) A is square if m=
More information8 Velocity Kinematics
8 Velocity Kinematics Velocity analysis of a robot is divided into forward and inverse velocity kinematics. Having the time rate of joint variables and determination of the Cartesian velocity of end-effector
More informationRigid-Body Attitude Control USING ROTATION MATRICES FOR CONTINUOUS, SINGULARITY-FREE CONTROL LAWS
Rigid-Body Attitude Control USING ROTATION MATRICES FOR CONTINUOUS, SINGULARITY-FREE CONTROL LAWS 3 IEEE CONTROL SYSTEMS MAGAZINE» JUNE -33X//$. IEEE SHANNON MASH Rigid-body attitude control is motivated
More informationSTEP Support Programme. STEP 2 Matrices Topic Notes
STEP Support Programme STEP 2 Matrices Topic Notes Definitions............................................. 2 Manipulating Matrices...................................... 3 Transformations.........................................
More informationMath 350 Fall 2011 Notes about inner product spaces. In this notes we state and prove some important properties of inner product spaces.
Math 350 Fall 2011 Notes about inner product spaces In this notes we state and prove some important properties of inner product spaces. First, recall the dot product on R n : if x, y R n, say x = (x 1,...,
More informationOn the Observability and Self-Calibration of Visual-Inertial Navigation Systems
Center for Robotics and Embedded Systems University of Southern California Technical Report CRES-08-005 R B TIC EMBEDDED SYSTEMS LABORATORY On the Observability and Self-Calibration of Visual-Inertial
More informationDepartment of Physics, Korea University
Name: Department: Notice +2 ( 1) points per correct (incorrect) answer. No penalty for an unanswered question. Fill the blank ( ) with (8) if the statement is correct (incorrect).!!!: corrections to an
More informationChapter 2 Math Fundamentals
Chapter 2 Math Fundamentals Part 5 2.8 Quaternions 1 Outline 2.8.1 Representations and Notation 2.7.2 Quaternion Multiplication 2.7.3 Other Quaternion Operations 2.7.4 Representing 3D Rotations 2.7.5 Attitude
More informationIntroduction to Matrix Algebra
Introduction to Matrix Algebra August 18, 2010 1 Vectors 1.1 Notations A p-dimensional vector is p numbers put together. Written as x 1 x =. x p. When p = 1, this represents a point in the line. When p
More informationPHYS 705: Classical Mechanics. Euler s Equations
1 PHYS 705: Classical Mechanics Euler s Equations 2 Euler s Equations (set up) We have seen how to describe the kinematic properties of a rigid body. Now, we would like to get equations of motion for it.
More informationProjective Bivector Parametrization of Isometries Part I: Rodrigues' Vector
Part I: Rodrigues' Vector Department of Mathematics, UACEG International Summer School on Hyprcomplex Numbers, Lie Algebras and Their Applications, Varna, June 09-12, 2017 Eulerian Approach The Decomposition
More informationInstitute of Geometry, Graz, University of Technology Mobile Robots. Lecture notes of the kinematic part of the lecture
Institute of Geometry, Graz, University of Technology www.geometrie.tugraz.at Institute of Geometry Mobile Robots Lecture notes of the kinematic part of the lecture Anton Gfrerrer nd Edition 4 . Contents
More informationQuaternions. R. J. Renka 11/09/2015. Department of Computer Science & Engineering University of North Texas. R. J.
Quaternions R. J. Renka Department of Computer Science & Engineering University of North Texas 11/09/2015 Definition A quaternion is an element of R 4 with three operations: addition, scalar multiplication,
More informationMath 302 Outcome Statements Winter 2013
Math 302 Outcome Statements Winter 2013 1 Rectangular Space Coordinates; Vectors in the Three-Dimensional Space (a) Cartesian coordinates of a point (b) sphere (c) symmetry about a point, a line, and a
More informationLinear Algebra: Matrix Eigenvalue Problems
CHAPTER8 Linear Algebra: Matrix Eigenvalue Problems Chapter 8 p1 A matrix eigenvalue problem considers the vector equation (1) Ax = λx. 8.0 Linear Algebra: Matrix Eigenvalue Problems Here A is a given
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz Vectors Arrays of numbers Vectors represent a point in a n dimensional space
More informationLecture Note 1: Background
ECE5463: Introduction to Robotics Lecture Note 1: Background Prof. Wei Zhang Department of Electrical and Computer Engineering Ohio State University Columbus, Ohio, USA Spring 2018 Lecture 1 (ECE5463 Sp18)
More informationMath (P)Review Part I:
Lecture 1: Math (P)Review Part I: Linear Algebra Computer Graphics CMU 15-462/15-662, Fall 2017 Homework 0.0 (Due Monday!) Exercises will be a bit harder / more rigorous than what you will do for the rest
More informationMinimum-Parameter Representations of N-Dimensional Principal Rotations
Minimum-Parameter Representations of N-Dimensional Principal Rotations Andrew J. Sinclair and John E. Hurtado Department of Aerospace Engineering, Texas A&M University, College Station, Texas, USA Abstract
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Bastian Steder
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Bastian Steder Reference Book Thrun, Burgard, and Fox: Probabilistic Robotics Vectors Arrays of numbers Vectors represent
More informationPhysical Dynamics (PHY-304)
Physical Dynamics (PHY-304) Gabriele Travaglini March 31, 2012 1 Review of Newtonian Mechanics 1.1 One particle Lectures 1-2. Frame, velocity, acceleration, number of degrees of freedom, generalised coordinates.
More informationVectors a vector is a quantity that has both a magnitude (size) and a direction
Vectors In physics, a vector is a quantity that has both a magnitude (size) and a direction. Familiar examples of vectors include velocity, force, and electric field. For any applications beyond one dimension,
More informationClassical Mechanics. Luis Anchordoqui
1 Rigid Body Motion Inertia Tensor Rotational Kinetic Energy Principal Axes of Rotation Steiner s Theorem Euler s Equations for a Rigid Body Eulerian Angles Review of Fundamental Equations 2 Rigid body
More informationLinear Algebra Homework and Study Guide
Linear Algebra Homework and Study Guide Phil R. Smith, Ph.D. February 28, 20 Homework Problem Sets Organized by Learning Outcomes Test I: Systems of Linear Equations; Matrices Lesson. Give examples of
More informationLinear Algebra. Min Yan
Linear Algebra Min Yan January 2, 2018 2 Contents 1 Vector Space 7 1.1 Definition................................. 7 1.1.1 Axioms of Vector Space..................... 7 1.1.2 Consequence of Axiom......................
More informationCS 246 Review of Linear Algebra 01/17/19
1 Linear algebra In this section we will discuss vectors and matrices. We denote the (i, j)th entry of a matrix A as A ij, and the ith entry of a vector as v i. 1.1 Vectors and vector operations A vector
More informationKINEMATIC EQUATIONS OF NONNOMINAL EULER AXIS/ANGLE ROTATION
IAA-AAS-DyCoSS -14-10-01 KINEMATIC EQUATIONS OF NONNOMINAL EULER AXIS/ANGLE ROTATION Emanuele L. de Angelis and Fabrizio Giulietti INTRODUCTION Euler axis/angle is a useful representation in many attitude
More informationElements of linear algebra
Elements of linear algebra Elements of linear algebra A vector space S is a set (numbers, vectors, functions) which has addition and scalar multiplication defined, so that the linear combination c 1 v
More informationRobotics I. February 6, 2014
Robotics I February 6, 214 Exercise 1 A pan-tilt 1 camera sensor, such as the commercial webcams in Fig. 1, is mounted on the fixed base of a robot manipulator and is used for pointing at a (point-wise)
More informationRepresentation of a three dimensional moving scene
Chapter 2 Representation of a three dimensional moving scene The study of the geometric relationship between a three-dimensional scene and its images taken from a moving camera boils down to the interplay
More informationSolutions for Fundamentals of Continuum Mechanics. John W. Rudnicki
Solutions for Fundamentals of Continuum Mechanics John W. Rudnicki December, 015 ii Contents I Mathematical Preliminaries 1 1 Vectors 3 Tensors 7 3 Cartesian Coordinates 9 4 Vector (Cross) Product 13 5
More informationRobot Control Basics CS 685
Robot Control Basics CS 685 Control basics Use some concepts from control theory to understand and learn how to control robots Control Theory general field studies control and understanding of behavior
More informationMatrix operations Linear Algebra with Computer Science Application
Linear Algebra with Computer Science Application February 14, 2018 1 Matrix operations 11 Matrix operations If A is an m n matrix that is, a matrix with m rows and n columns then the scalar entry in the
More informationEngineering Mechanics Prof. U. S. Dixit Department of Mechanical Engineering Indian Institute of Technology, Guwahati
Engineering Mechanics Prof. U. S. Dixit Department of Mechanical Engineering Indian Institute of Technology, Guwahati Module No. - 01 Basics of Statics Lecture No. - 01 Fundamental of Engineering Mechanics
More informationCayley-Hamilton Theorem
Cayley-Hamilton Theorem Massoud Malek In all that follows, the n n identity matrix is denoted by I n, the n n zero matrix by Z n, and the zero vector by θ n Let A be an n n matrix Although det (λ I n A
More informationGeneral Theoretical Concepts Related to Multibody Dynamics
General Theoretical Concepts Related to Multibody Dynamics Before Getting Started Material draws on two main sources Ed Haug s book, available online: http://sbel.wisc.edu/courses/me751/2010/bookhaugpointers.htm
More informationPHYS 705: Classical Mechanics. Rigid Body Motion Introduction + Math Review
1 PHYS 705: Classical Mechanics Rigid Body Motion Introduction + Math Review 2 How to describe a rigid body? Rigid Body - a system of point particles fixed in space i r ij j subject to a holonomic constraint:
More informationKnowledge Discovery and Data Mining 1 (VO) ( )
Knowledge Discovery and Data Mining 1 (VO) (707.003) Review of Linear Algebra Denis Helic KTI, TU Graz Oct 9, 2014 Denis Helic (KTI, TU Graz) KDDM1 Oct 9, 2014 1 / 74 Big picture: KDDM Probability Theory
More informationRepresentation of a Three-Dimensional Moving Scene
This is page 15 Printer: Opaque this Chapter 2 Representation of a Three-Dimensional Moving Scene I will not define time, space, place and motion, as being well known to all. Isaac Newton, Principia Mathematica,
More informationLinear Algebra Review
Chapter 1 Linear Algebra Review It is assumed that you have had a course in linear algebra, and are familiar with matrix multiplication, eigenvectors, etc. I will review some of these terms here, but quite
More informationDot Products. K. Behrend. April 3, Abstract A short review of some basic facts on the dot product. Projections. The spectral theorem.
Dot Products K. Behrend April 3, 008 Abstract A short review of some basic facts on the dot product. Projections. The spectral theorem. Contents The dot product 3. Length of a vector........................
More informationExtra Problems for Math 2050 Linear Algebra I
Extra Problems for Math 5 Linear Algebra I Find the vector AB and illustrate with a picture if A = (,) and B = (,4) Find B, given A = (,4) and [ AB = A = (,4) and [ AB = 8 If possible, express x = 7 as
More informationBasic Concepts in Linear Algebra
Basic Concepts in Linear Algebra Grady B Wright Department of Mathematics Boise State University February 2, 2015 Grady B Wright Linear Algebra Basics February 2, 2015 1 / 39 Numerical Linear Algebra Linear
More informationMAT 2037 LINEAR ALGEBRA I web:
MAT 237 LINEAR ALGEBRA I 2625 Dokuz Eylül University, Faculty of Science, Department of Mathematics web: Instructor: Engin Mermut http://kisideuedutr/enginmermut/ HOMEWORK 2 MATRIX ALGEBRA Textbook: Linear
More informationHomework 2. Solutions T =
Homework. s Let {e x, e y, e z } be an orthonormal basis in E. Consider the following ordered triples: a) {e x, e x + e y, 5e z }, b) {e y, e x, 5e z }, c) {e y, e x, e z }, d) {e y, e x, 5e z }, e) {
More informationRigid bodies - general theory
Rigid bodies - general theory Kinetic Energy: based on FW-26 Consider a system on N particles with all their relative separations fixed: it has 3 translational and 3 rotational degrees of freedom. Motion
More informationME751 Advanced Computational Multibody Dynamics. September 14, 2016
ME751 Advanced Computational Multibody Dynamics September 14, 2016 Quote of the Day My own business always bores me to death; I prefer other people's. -- Oscar Wilde 2 Looking Ahead, Friday Need to wrap
More information14 Singular Value Decomposition
14 Singular Value Decomposition For any high-dimensional data analysis, one s first thought should often be: can I use an SVD? The singular value decomposition is an invaluable analysis tool for dealing
More information16.333: Lecture #3. Frame Rotations. Euler Angles. Quaternions
16.333: Lecture #3 Frame Rotations Euler Angles Quaternions Fall 2004 16.333 3 1 Euler Angles For general applications in 3D, often need to perform 3 separate rotations to relate our inertial frame to
More informationMath Linear Algebra Final Exam Review Sheet
Math 15-1 Linear Algebra Final Exam Review Sheet Vector Operations Vector addition is a component-wise operation. Two vectors v and w may be added together as long as they contain the same number n of
More informationLie Groups for 2D and 3D Transformations
Lie Groups for 2D and 3D Transformations Ethan Eade Updated May 20, 2017 * 1 Introduction This document derives useful formulae for working with the Lie groups that represent transformations in 2D and
More informationReview of Basic Concepts in Linear Algebra
Review of Basic Concepts in Linear Algebra Grady B Wright Department of Mathematics Boise State University September 7, 2017 Math 565 Linear Algebra Review September 7, 2017 1 / 40 Numerical Linear Algebra
More informationLecture 4: Exponentials & Twists
ME 50.646 Introduction Lecture 4: Exponentials & Twists Noah J. Cowan Fall 017 1 Skew symmetric matrices Let so(n) :={S R n n : S = S T } denote the skew symmetric matrices. Note that given any matrix,
More informationRobot Dynamics Lecture Notes. Robotic Systems Lab, ETH Zurich
Robot Dynamics Lecture Notes Robotic Systems Lab, ETH Zurich HS 217 Contents 1 Introduction 1 1.1 Nomenclature.............................. 2 1.2 Operators................................ 3 2 Kinematics
More informationAPPENDIX A. Background Mathematics. A.1 Linear Algebra. Vector algebra. Let x denote the n-dimensional column vector with components x 1 x 2.
APPENDIX A Background Mathematics A. Linear Algebra A.. Vector algebra Let x denote the n-dimensional column vector with components 0 x x 2 B C @. A x n Definition 6 (scalar product). The scalar product
More informationIntroduction to Mobile Robotics Compact Course on Linear Algebra. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello
Introduction to Mobile Robotics Compact Course on Linear Algebra Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello Vectors Arrays of numbers Vectors represent a point
More informationLesson Rigid Body Dynamics
Lesson 8 Rigid Body Dynamics Lesson 8 Outline Problem definition and motivations Dynamics of rigid bodies The equation of unconstrained motion (ODE) User and time control Demos / tools / libs Rigid Body
More informationPART ONE DYNAMICS OF A SINGLE PARTICLE
PART ONE DYNAMICS OF A SINGLE PARTICLE 1 Kinematics of a Particle 1.1 Introduction One of the main goals of this book is to enable the reader to take a physical system, model it by using particles or rigid
More informationRotational Motion. Chapter 4. P. J. Grandinetti. Sep. 1, Chem P. J. Grandinetti (Chem. 4300) Rotational Motion Sep.
Rotational Motion Chapter 4 P. J. Grandinetti Chem. 4300 Sep. 1, 2017 P. J. Grandinetti (Chem. 4300) Rotational Motion Sep. 1, 2017 1 / 76 Angular Momentum The angular momentum of a particle with respect
More informationCourse Notes Math 275 Boise State University. Shari Ultman
Course Notes Math 275 Boise State University Shari Ultman Fall 2017 Contents 1 Vectors 1 1.1 Introduction to 3-Space & Vectors.............. 3 1.2 Working With Vectors.................... 7 1.3 Introduction
More information1. General Vector Spaces
1.1. Vector space axioms. 1. General Vector Spaces Definition 1.1. Let V be a nonempty set of objects on which the operations of addition and scalar multiplication are defined. By addition we mean a rule
More informationSpring, 2012 CIS 515. Fundamentals of Linear Algebra and Optimization Jean Gallier
Spring 0 CIS 55 Fundamentals of Linear Algebra and Optimization Jean Gallier Homework 5 & 6 + Project 3 & 4 Note: Problems B and B6 are for extra credit April 7 0; Due May 7 0 Problem B (0 pts) Let A be
More informationLinear Algebra. Session 12
Linear Algebra. Session 12 Dr. Marco A Roque Sol 08/01/2017 Example 12.1 Find the constant function that is the least squares fit to the following data x 0 1 2 3 f(x) 1 0 1 2 Solution c = 1 c = 0 f (x)
More informationFall, 2003 CIS 610. Advanced geometric methods. Homework 3. November 11, 2003; Due November 25, beginning of class
Fall, 2003 CIS 610 Advanced geometric methods Homework 3 November 11, 2003; Due November 25, beginning of class You may work in groups of 2 or 3 Please, write up your solutions as clearly and concisely
More informationConceptual Questions for Review
Conceptual Questions for Review Chapter 1 1.1 Which vectors are linear combinations of v = (3, 1) and w = (4, 3)? 1.2 Compare the dot product of v = (3, 1) and w = (4, 3) to the product of their lengths.
More informationRigid-Body Motions. Chapter 4
Chapter 4 Rigid-Body Motions In the previous chapter, we saw that a minimum of six numbers are needed to specify the position and orientation of a rigid body in three-dimensional physical space. We established
More informationMatrices and Vectors. Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A =
30 MATHEMATICS REVIEW G A.1.1 Matrices and Vectors Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A = a 11 a 12... a 1N a 21 a 22... a 2N...... a M1 a M2... a MN A matrix can
More information