Mon 30 July 2007 Overview of the course Forward Kinematics (given theta, find end-point) Inverse Kinematics (given end-point find theta) Dynamics (given input torques find theta as a function of time) Control (design torque to follow a given end-point trajectory)
A Note on Control Robot dynamical model Control Problem - Given q(t) find appropriate tau Two solutions: Feedforward control – calculate tau from the above equation (since LHS is known) Feedback control – let tau = f(q desired – q measured) – control design means how to find the function f. When to use feedforward control and when to use feedback control? Stability, optimality, robustness, etc., several issues to be considered for practical control
Representation in frame 1 Rotation matrix from frame 1 to frame 0
Example
Exercise Fill in
Rotation Matrix Rotation matrix columns are of unit length and perpendicular to each other (proof needed). Columns are unit vectors of new x, y, and z axes expressed in the old frame. Determinant of the rotation matrix is plus or minus one (proof needed). SO(3) – set of all 3 x 3 rotation matrices
Composition of Rotations also Phi deg about the current y-axis (i.e., y0) Theta deg about the current z-axis (i.e., z1) Theta deg about the current z-axis (i.e., z0) Phi deg about the current y-axis (i.e., y1)
About Fixed Axes For example, phi about y0 and then rotate theta about z0 (not about z1 as in the previous example). Is the composition rotation matrix R = R(y,phi) R(z,theta) ?
About fixed axes Red – frame 0 Blue – frame 1 Green – frame 2 phi theta Phi about y0 Theta about z0 We want a rotation matrix from frame 2 to frame 0.
Pre-multiply for rotation about fixed axes dashed frame is frame 0 rotated by theta about z0 phi theta Rotation matrix from green frame to the dashed frame is the same as from blue frame to red frame which is R(y,phi). Rotation matrix from dashed frame to red frame is R(z,theta) Finally the rotation matrix from green frame to red frame is: (first green to dashed and then dashed to red) R(z,theta) R(y,phi) Pre-multiply for rotation about fixed axes Post-multiply for rotation about current axes
See Similarity Transform (Section 2.3.1 p47) vector p in frame i is written as frame k is frame 0 after theta rotation about k-axis Rotation matrix from frame 2 to frame 0 is the same as from frame 3 to frame k. See Similarity Transform (Section 2.3.1 p47) Frame 3 from frame 0 by first R(z,alpha) to align x0 with x-y plane projection of k-axis – frame 1 then R(y,beta) to align z1 with the k-axis – frame 2 then R(z,theta) to obtain frame 3.
R(k,theta) Nine elements but only three independent parameters – what are they? Any R in SO(3) can be written as R(k,theta) where theta = acos(trace(R) – 1)/2 and k = (1/2 sin(theta))[r32-r23; r13-r31; r21-r12] Representation is non-unique
S(k) is a skew symmetric matrix
Rigid body rotation Euler angles – {theta, phi, psi}-Rotations about current axes R = R(z,phi) R(y,theta) R(z,psi) Roll, Pitch, and Yaw Angles – Rotations about fixed-axes
Homogeneous Transformation Can we do this operation using matrices?
Elementary Transformations
Skew Symmetric Matrix ss(3)
Example Find What is k?
Angular velocity and Acceleration That vector which parameterises S(t), i.e., the vector of the three components in S(t), is known as the angular velocity.
Example
Velocity and Acceleration Transverse acceleration Centripetal acceleration Coriolis acceleration
Addition of Angular Velocities
Forward Kinematics
DH Representation
DH Representation - Frames (Convention) Frame i is attached to link i. The inertial frame is Frame 0 and Earth is link 0. Joint i joins links i-1 and i. (Another convention) The joint i+1 rotates about axis zi (DH1) The axis xi is perpendicular to the axis zi-1 (DH2) The axis xi intersects the axis zi-1 DH convention imposes two constrains thus enabling the use of only four parameters instead of six.
DH1
DH2
Assign frames at the two joints and at the end-point based on DH convention Write A1, A2, and A3 Frame i is attached to link i. The inertial frame is Frame 0 and Earth is link 0. Joint i joins links i-1 and i. The joint i+1 rotates about axis zi Link ai αi di 1 2
Three link cylindrical robot ai αi di i 1 2 3
Stanford Manipulator Link ai αi di i 1 2 3 4 5 6
SCARA Manipulator Link ai αi di i 1 2 3 4
Inverse Kinematics