
Lecture 7 Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II Lecture 7 Frobenius’s theorem Kinematic Nonholonomic constraint II representation: goals, overview Representing Rotation I Spatial rotations Preview Axis-angle Rodrigues’s formula Rotation matrices Matthew T. Mason Matrix exponential Euler angles Mechanics of Manipulation Lecture 7 Today’s outline Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II Nonholonomic constraint II Frobenius’s theorem Frobenius’s theorem Kinematic representation: Kinematic representation: goals, overview goals, overview Spatial rotations Preview Axis-angle Spatial rotations Rodrigues’s formula Rotation matrices Preview Matrix exponential Axis-angle Euler angles Rodrigues’s formula Rotation matrices Matrix exponential Euler angles Lecture 7 Involutive distribution Nonholonomic constraint II Representing Rotation I Definition (Involutive) Nonholonomic constraint II A distribution is involutive if it is closed under Lie brackets. Frobenius’s theorem Kinematic representation: Definition (Involutive closure) goals, overview Spatial rotations The involutive closure of a distribution ∆ is the closure ∆ Preview Axis-angle of the distribution under Lie bracketing. Rodrigues’s formula Rotation matrices Matrix exponential Euler angles I Given a distribution spanned by a set of vector fields, take Lie brackets for all pairs of vector fields. I If you get a vector field not previously in the span, add it. I Repeat until you get nothing new. Lecture 7 Frobenius’s theorem Nonholonomic constraint II Representing Theorem (2.8, Frobenius’s theorem) Rotation I A regular distribution is integrable if and only if it is Nonholonomic involutive. constraint II Frobenius’s theorem Kinematic representation: Proof. goals, overview Spatial rotations I (integrable ! involutive.) Take the Taylor series of Preview Axis-angle parallel parking as a function of . Second order Rodrigues’s formula Rotation matrices terms are Lie brackets! If the distribution is involutive, Matrix exponential the Lie brackets must also be contained in the Euler angles distribution. I (involutive ! integrable). Too involved for us. By induction over dimension. Restating Frobenius’s theorem: A set of constraints is nonholonomic $ parallel parking is useful. Lecture 7 Lessons of nonholonomic constraint Nonholonomic constraint II Representing Rotation I I Robots usually have less motors than task freedoms. There will be constraints. Nonholonomic constraint II I A holonomic constraint is a constraint on Frobenius’s theorem configuration: it says there are places you cannot go. Kinematic representation: That is a reduction in freedoms. That’s (usually) bad. goals, overview I A nonholonomic constraint is a constraint on velocity: Spatial rotations Preview there are directions you cannot go. But you can still Axis-angle Rodrigues’s formula get wherever you want. That’s (usually) good! Rotation matrices Matrix exponential Euler angles I Parallel parking is general. If you want to move in the constrained direction, pick a pair of controls and interleave oscillations. Or do it mathematically with Lie brackets. I If parallel parking doesn’t help, you are truly stuck on the leaf of a foliation. Rearrange your motors, or buy more. Lecture 7 Kinematic representation. Readings, etc. Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II Frobenius’s theorem Kinematic representation: I We are starting chapter 3 of the text goals, overview I Lots of stuff online on representing rotations Spatial rotations Preview Axis-angle I Murray, Li, and Sastry for matrix exponential Rodrigues’s formula Rotation matrices I Roth, Crenshaw, Ohwovoriole, Salamin, all cited in Matrix exponential text Euler angles Lecture 7 Analytic geometry Nonholonomic constraint II Representing So far, Euclidean geometry. Why? Rotation I Nonholonomic I Insight constraint II Frobenius’s theorem I Visualization Kinematic representation: I Economy of expression goals, overview Spatial rotations Preview Axis-angle Now Cartesian, analytic geometry. Why? Rodrigues’s formula Rotation matrices Matrix exponential Euler angles I Beyond 2D, beyond 3D. We need to work with high dimensional configuration spaces! I For implementation I For additional insight The best of all possible worlds: use both. Understand geometrical or physical meaning for all terms. Lecture 7 Agenda for kinematic representation Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II Frobenius’s theorem Kinematic Following the kinematic agenda: representation: goals, overview I Planar displacements. No. Skipping this. Spatial rotations Preview Axis-angle I Spherical displacements Rodrigues’s formula Rotation matrices I Spatial displacements Matrix exponential Euler angles I Constraints Lecture 7 Why representing rotations is hard. Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II I Rotations do not commute. Vectors are out. Frobenius’s theorem Kinematic I For computation we like to represent things with real representation: goals, overview numbers, so our representations all live in Rn. Spatial rotations I Even though SO(3) is a three-dimensional space, it Preview 3 Axis-angle has the topology of projective three space P , which Rodrigues’s formula 3 Rotation matrices cannot be smoothly mapped to . Matrix exponential R Euler angles I And, we have lots of different applications, with different requirements: communication, operating on things, composition, interpolation, etc. Lecture 7 Choices Nonholonomic constraint II Representing Rotation I Nonholonomic I Axis-angle constraint II Frobenius’s theorem I Good for communication, geometrical insight Kinematic representation: I Rotation matrices goals, overview I Good for operating on stuff, composition, analytical Spatial rotations Preview insight Axis-angle Rodrigues’s formula I Matrix exponential Rotation matrices Matrix exponential I Unit quaternions (aka Euler parameters) Euler angles I Good for composition, analytical insight, sampling I Euler angles I Good for communication, geometrical insight Lecture 7 Axis-angle Nonholonomic constraint II Representing Rotation I Euler’s theorem: every spatial rotation has a rotation axis. Nonholonomic n constraint II I Let O, n^, θ, be ::: Frobenius’s theorem Kinematic I Let rot(n^; θ) be the corresponding representation: rotation. goals, overview Spatial rotations I Many to one: Preview Axis-angle Rodrigues’s formula I rot(−n^; −θ) = rot(n^; θ) Rotation matrices I rot(n^; θ + 2kπ) = rot(n^; θ), for any integer k. Matrix exponential Euler angles I So, restrict θ to [0; π]. But not smooth at the edges. I When θ = 0, the rotation axis is indeterminate, giving an infinity-to-one mapping. I Again you can fix by adopting a convention for n^, but result is not smooth. I (Or, what about using the product, θn^? Later.) Lecture 7 What do we want from axis-angle? Nonholonomic constraint II Representing Rotation I Nonholonomic constraint II Frobenius’s theorem I Operate on points Kinematic I Rodrigues’s formula representation: goals, overview I Compose rotations, average, interpolate, sampling, Spatial rotations :::? Preview Axis-angle I Not using axis-angle Rodrigues’s formula Rotation matrices Matrix exponential I Convert to other representations? There aren’t any Euler angles yet. But, later we will use axis-angle big time. It’s very close to quaternions. Lecture 7 Rodrigues’s formula Nonholonomic constraint II Representing Others derive Rodrigues’s formula using rotation Rotation I matrices: ugly and messy. The geometrical approach is Nonholonomic clean and insightful. constraint II Frobenius’s theorem I Given point x, decompose into Kinematic representation: components parallel and goals, overview perpendicular to the rotation axis Spatial rotations Preview Axis-angle n x = n^(n^ · x) − n^ × (n^ × x) n n x Rodrigues’s formula Rotation matrices nx Matrix exponential Euler angles I Only x? is affected by the rotation, x yielding Rodrigues’s formula: n n x x x0 = n^(n^·x)+sin θ (n^×x)−cos θ n^×(n^×x) O I A common variation: x0 = x+(sin θ) n^×x+(1−cos θ) n^×(n^×x) Lecture 7 Rotation matrices Nonholonomic constraint II Representing I Choose O on rotation axis. Choose frame Rotation I (u^1; u^2; u^3). 0 0 0 I Let (u^ ; u^ ; u^ ) be the image of that frame. Nonholonomic 1 2 3 constraint II ^0 ^ Frobenius’s theorem I Write the ui vectors in ui coordinates, and collect Kinematic them in a matrix: representation: goals, overview 0 1 0 ^ ^0 1 a11 u1 · u1 Spatial rotations ^0 ^ ^0 Preview u1 = @ a21 A = @ u2 · u1 A Axis-angle ^ ^0 Rodrigues’s formula a31 u3 · u1 Rotation matrices Matrix exponential 0 0 1 0 ^ ^ 1 Euler angles a12 u1 · u2 ^0 ^ ^0 u2 = @ a22 A = @ u2 · u2 A ^ ^0 a32 u3 · u2 0 1 0 ^ ^0 1 a13 u1 · u3 ^0 ^ ^0 u3 = @ a23 A = @ u2 · u3 A ^ ^0 a33 u3 · u3 0 0 0 A = aij = u^1ju^2ju^3 Lecture 7 So many numbers! Nonholonomic constraint II Representing Rotation I I A rotation matrix has nine numbers, Nonholonomic I but spatial rotations have only three degrees of constraint II freedom, Frobenius’s theorem Kinematic I leaving six excess numbers ::: representation: goals, overview I There are six constraints that hold among the nine Spatial rotations Preview numbers. Axis-angle Rodrigues’s formula 0 0 0 Rotation matrices ju^ j = ju^ j = ju^ j = 1 Matrix exponential 1 2 3 Euler angles 0 0 0 u^3 = u^1 × u^2 ^0 I i.e. the ui are unit vectors forming a right-handed coordinate system. I Such matrices are called orthonormal or rotation matrices.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages32 Page
-
File Size-