Robotic Motion The linear algebra of Canadarm The robot arm simulation The movements of the robotic arm can be described using orthogonal matrices. Six degrees of freedom The first segment is fixed to the wall but is free to rotate. The motion of the 2nd segment is confined to a plane; however, combining it with the rotation of the 1st segment allows it to move in the right half-space. The third segment can rotate and move in a plane and the same is true of the fourth segment. Spherical co-ordinates We want to determine this in the Cartesian co-ordinate system. Note that z/r= cos φ. x/s= cos θ and y/s= sin θ. To eliminate s, we note s/r = sin φ. Therefore x=r sin φ cos θ, y= r sin φ sin θ, z= r cos φ. Thus if r=1, the direction of the vector is given by two coordinates, φ and θ. We can reverse the calculation: given x, y,z, what are the values of r, θ, and φ ? (x,y,z) s Inverse Kinematics (x,y) To move the robotic arm to the position (x,y), we need to rotate the first arm by an angle α and the second arm by β. We will assume known the lengths L1 and L2 of the two arms. Law of sines The angle α is the sum of two angles: arctan(y/x) and the angle φ which we can calculate using the sine law. φ φ= Law of cosines This is a generalization of the Pythagorean theorem. We will apply this to the robotic problem. Calculation α and β √ The second term coming from the angle (x,y) makes with the horizontal axis. Six degrees of freedom again P is specified using three co-ordinates and is obtained from the three rotations 1, 2 and 3 indicated. Rotations 4 and 5 are used to orient the axis of the claw. Rotation 6 rotates the claw to the desired angle about its axis. Moving a solid in a plane It requires two coordinates (x,y) to specify the position of A after it is moved. One more parameter, the angle α, is needed to specify the rotation with respect to the horizontal axis AB. (x,y) A B Robotic motion and orthogonal matrices Any rotation in R2 is given by a matrix of this form. These matrices are orthogonal: AAt = I. We have shown all 2 x 2 orthogonal matrices A with det A=1 have this form. The motion of a robotic arm in R3 is a sequence of translations and rotations. With a suitable basis, any rotation in R3 is of the following form: The cross product Here n is a vector of unit length perpendicular to both the vectors a and b. The right hand rule The green vector depicting the cross product changes as the angle between the two vectors changes. The cross product is neither commutative nor associative but satisfies the Jacobi identity. a, b, c in R3 Transformations of R3 preserving lengths and angles Theorem: Any movement of a solid in space is the composition of a translation and rotation about some axis. After an appropriate choice of basis for R3, the rotation is given by the matrix: Rotations in n R Any orthogonal matrix has determinant +1 or -1. Rotations in n R with det = -1. This has the following geometric meaning: