310 likes | 624 Views
The Concepts of Orientation/Rotation ‘Transformations’. ME 4135 -- Lecture Series 2 Fall 2011, Dr. R. Lindeke. Overview Outline. Defining Terminology Defining the Orientation Matrix By Axial Rotation By Physical Meaning Defining Orientation Effects RPY Orientation Control
E N D
The Concepts of Orientation/Rotation ‘Transformations’ ME 4135 -- Lecture Series 2 Fall 2011, Dr. R. Lindeke
Overview Outline • Defining Terminology • Defining the Orientation Matrix • By Axial Rotation • By Physical Meaning • Defining Orientation Effects • RPY Orientation Control • Euler and Robotic Orientation Control
Symbol Interpretation • Lower Case BOLD letters indicate vectors • Upper Case BOLD letters indicate a Matrix • Letters w/ “Hat” indicate Unit Vectors (Unbolded) • Arrow Above 2 Uppercase Letters indication Start/Stop Points of a vector r , s , d , a , b , c p , q , v , w , y , z ω , α , θ , δ , φ F , M , J
Symbol Interpretation • Typically the Capitol Letters: A,T,Q & R indicate translational &/or rotation Transformation Matrices • Transformation are often (Always?) between different Frames of Reference, thus: • Here, B is a “Body” Frame and G is the “Ground,” “Global” or “Inertial” Frame – later is often labeled the 0 (zero) frame
Symbol Interpretation • Left “Superscript” on a vector indicates frame vector is expressed in • Here a vector ‘r’ expressed in ground frame • Right “Subscript” on a vector indicates ‘tip’ point that the vector points to • Here a vector ‘r’ pointing to point ‘P’ expressed in frame G – and implied it is also measured in G frame
Symbol Interpretation • Left Subscript in a vector indicates the Frame of measurement • Here we are indicating a vector ending at point P as measured in the B Frame but Expressed in the G Frame
Symbol Interpretation • Right Subscript on angular velocity indicates a Moving Frame while left subscript indicates frame of measurement • Here angular velocity of Frame B w.r.t. G Frame • Right Superscript on angular velocity vector indicates frame in which velocity is expressed • Here angular velocity of Frame B1 measured in G Frame but expressed into B2 Frame For more symbolic interpretations see the text Preface and lists at the end of each chapter!
Dealing With Rotational Kinematics Note: Vector r positioning point P can be defined in either Frame G (Xp,Yp,Zp) or in Frame B (xp,yp.zp)
Dealing With Rotational Kinematics • Typically we then need a “Quick” tool to relate these two definitions of the same point! • Since we are talking about rotations only, we will develop an Orientation Transform to do this (Q) • It is based in the “Inner Product” approach to geometric relationships
Simple (single axial) Rotational Transformations • About Z axis (by or rad): • About Y axis (by or rad): • About X axis (by or rad):
Considering other terms: And so on … Until we achieve the original QZ, Matrix
These Homogenous Transformation Matrices – A Physical Interpretation • A representation of a Coordinate Transformation relating the coordinates of a point ‘P’ between 2 like-geometrid (-- ie SO3 --) different coordinate systems • A representation of the Position and Orientation (POSE) of a transformed coordinate frame in the “space” defined by a fixed coordinate frame • An OPERATION that takes a vector rPand rotates and/or translates it to a new vectorrP‘ in the same coordinate frame These same concepts also apply equally to just the effect of simple (one axial) and complex ROTATIONAL operations as well
Try an Example: Now lets rotate about the G frames axes: 1st Z of 45; then X of 45; finally Y of 90. The question often asked is where is the P1 point moved to?
What it means (1) • The point on the “body” is (5,30,10)G but it is also (5,30,10)B and the two Frames are originally co-incident • Looking at the first rotation we can build a rotational matrix:
What it means (2) • The body Frame (and the body point!) have now moved – as expected, [except for the Z coordinate] • Now lets take the second rotation (about XG) by 45 • Leading to a new position:
What it means (3) • Again the point and body frame geometry have changed (except for the X coordinate!) • Finally lets take a look at the effect of the last Y rotation But can’t there be an easier way than all of these individual steps – to get final B Frame orientation and a tool for finding the position?
Turns out we can Multiply the 3 “back to back” – in reverse order to accomplish it!
Computed in MathCad And note: Using this Matrix Product “Qeff” built in reverse order when multiplied by the original vector location of PB we get the same answer! (whew!)
Physical Focus on the Product Matrix xByBzB • It is the physical orientation of the Body frame after the three rotations taken w.r.t. the Ground frame • 1st Column is the projection of xB to the Ground Frame’s axes • And note that each of the columns – or rows – is a unit vector XG YG ZG
Now, What Happens if we “redefine” the Rotating Frame between each step? • This should take us to a new place! • We can build this overall Orientation Matrix too – but it must be different if it is ‘moving’ P1 to a new place!?! • Lets guess that we need just reverse the individual matrix order before doing the overall product … well it sound good … Our Text’s Author calls this “Local Rotation”
Now using this matrix (from MathCad) A different final position (as expected) -- so changing frames of reference between individual operations can be “easily” accounted for by multiplying matrices – in the order of the individual operational events!
So Why do I care in Robotics? • We will be most interested in Orientation of the End Effectors • In the “Real World” orientation is defined in various ways: • By Roll-Pitch-Yaw (RPY) • By Euler Angles (EA) • We find • RPY defines orientation w.r.t. a fixed frame of reference • EA defines orientation in a relative sense with a simple rotation about a base frame and two subsequent re-defined frames (one axial rotation about a single axis in each frame ) • Zinit followed by Xinterm1 followed by Zinterm2
RPY by our Text (I grew up with a different thought as to axis of Roll wrt Z and Yaw wrt X but it is of no consequence) Meaning Globally As applied Locally
Considering Euler Angles Initial Z rotation leads to orientation B’ Final Z rot leads to the final orientation B‴ Secondary X rotation Leads to orientation B”
A last thought about these Q matrices • The inverse of the matrix is simply its transpose! Effectively the “inverse” is a mathematical way of looking at the ground from the viewpoint of the body frame so we must simply reverse which directions are ‘local’ and which are ‘remote’ as the matrix was fundamentally defined
Looking at this Idea (From last MathCad effort) Wow – That worked! So we can “move” round and round and then back again with the Orientation matrices
Summary • Orientation effects can be “accounted for” by using a directed series of Simple Rotations about individual axes when they are multiplied in an appropriate order • The Orientation Matrix (NQM) defines the axes (XM, YM, ZM) – of the M frame – in the space defined by the N Frame • The inverse of a Q matrix is simply its transpose and it is (REALLY) just the space being define with the original subscript and superscript exchanging roles (rows exchanged for columns in the 3x3 matrix)! • That is (NQM )-1 MQN • Using a Q matrix we are able to define geometries known in the M space into the N space (either way in reality!) • These Orientations are of interest to robotics in the various ways we define the orientation problem of robot manipulation