# Robot Kinematics

Views:

## Presentation Description

Forward kinematics and Reverse kinematics

## Presentation Transcript

### Slide 1:

Forward Kinematics M.Ganesh Murugan 9715447621

### Kinematics:

Kinematics Kinematics: mathematical description of motion of points in space Classical industrial robots have a fixed base Joints allow the motion of robots (active or passive) Links connect joints with each other Different types of joints Open kinematics chain closed kinematics chain

### Recapitulation: orientation:

Recapitulation: orientation RPY (XYZ fixed): Euler angles: General rotations can be reduced to chained elementary rotations with appropriate angles.

### Recapitulation: Orientation:

Recapitulation: Orientation On the whole 24 possibilities: 12 for „fixed angles“ 12 for Euler angles

### Recapitulation: Orientation:

Recapitulation: Orientation Angle-axis

### Recapitulation: Orientation:

Recapitulation: Orientation Quaternions Four instead of three parameters to describe orientation

### Coordinate systems:

Coordinate systems B base frame W wrist frame T tool frame S station frame G goal frame

### Joint types I:

Joint types I Rotary joint: rotation axis in right angle with both joint axes Torsion joint: rotation axis in parallel to both link axes

### Joint types II:

Joint types II Revolute joint: input link is parallel to axis of rotation, output link right angle to axis of rotation Prismatic joint: causes sliding or stepping motion along an axis

### Goal: Where is my wrist? (or hand):

Goal: Where is my wrist? (or hand)

### Forward/inverse kinematics:

Forward/inverse kinematics Forward kinematics: Calculate the position and orientation of the wrist joint Inverse kinematics: Calculate the joint angles based on the known position and orientation of the endeffector Inverse kinematics are usually harder to solve, since very different for every manipulator and possibly not unique or even large redundancy. Forward kinematics: Nowadays no problem Inverse kinematics: usually heavy calculations

### Kinematic abstraction:

Kinematic abstraction A robot can be interpreted as a set of rigid bodies connected via joints Parallel mechanisms are not treated in this lecture (often used for Pick & Place applications) Mechanisms with n-DoF joints can w.o.l.o.g. be described with as n joints of degree 1 connected with n links with length 0 Link description: 2 parameters Connection of two links: 2 parameters

Definitions: link description I Joint axis is defined by a line in space or a vector direction about which link i rotates relative to link i-1 Link length :distance between the joint axes Link twist : angle of the projection of the axes on the plane on which is perpendicular. It is measured from

Definitions: link description II Intersecting axes : Twist is measured in the same plane as on previous slide. BUT: sign is lost! Free assignment (good or bad choices possible)

Definitions: link connection I Neighboring links have a common axis Link offset : distance along the common axis from one link to the other Joint angle : amount of rotation about the common axis between the links

Definitions: link connection II : is measured from intersection ( with axis ) to intersection ( with axis ) : is measured from to about axis is variable for prismatic joints is variable for revolute joints

### The first and last link:

The first and last link Zero position for can be chosen arbitrarily depend on axis and At the end of the chain we define them to zero: , are well defined for axis 2 to n-1 Joint 1 revolute prismatic Zero position for can be chosen arbitrarily

### Link parameters for a revolute joint:

Link parameters for a revolute joint : joint variable : link parameter Every robot‘s kinematics can be completely described with four parameters per link. Revolute joint : joint variable : link parameter Prismatic joint Denavit-Hartenberg notation: definition of mechanisms by providing four parameters Soon:

### From one link to a full robot:

From one link to a full robot Up to now: One link. But a robot has n links! What to do?

Link transformations: motivation Goal: Solve the robot kinematics: This transformation is a function of all n joint variables If all joint positions are known we can calculate the position and orientation of the last link. Problem: Hard to solve as a whole Idea: Simplify the kinematics problem to n sub problems: Definition of a frame (coordinate system) for each robot link Relative transformation from to ToDo ToDo

### Generalized joint vector:

Generalized joint vector Previous slides: The transformation is a function of all n joint variables. The vector containing these variables is called generalized joint vector.

### Convention for frame attachment I: Intermediary links:

Convention for frame attachment I: Intermediary links coincident with joint axis Origin of where intersects the -th joint axis perpendicular shows along from joint to joint For counts that normal on plane defined by and

### Convention for frame attachment II: Intermediary links:

Convention for frame attachment II: Intermediary links is defined in right hand sense along Selection of corresponds to the two choices for the direction of is chosen such that a right hand system is created

### Convention for frame attachment III: First link:

Convention for frame attachment III: First link Attachment of a static frame to the basis of the robot: : Frame works as a reference for the definition of all other frames. Good choice: Coincident with if the joint variable 1 is zero this ensures: Joint 1 revolute prismatic

### Convention for frame attachment IV: Last link:

Convention for frame attachment IV: Last link chosen such that it aligns with if chosen such that Revolute joint Direction of chosen such that Origin of at the point of intersection of and joint axis when Prismatic joint

### Link parameters by means of frame axes I:

Link parameters by means of frame axes I

### Link parameters by means of frame axes II:

Link parameters by means of frame axes II Since corresponds to a length, it is a good choice to use BUT: are signed quantities The Denavit-Hartenberg convention is no unique scheme for attachment of frames on the links, see [Craig2005] (Check at home where are the choices)  Many good and bad choices Comment concerning uniqueness

### Summary: Frame attachment:

Summary: Frame attachment Identification of joint axes Please consider two neighboring axes , for the following steps Identify the common perpendicular, or point of intersection. Set the origin of the link frame to the intersection point, or at the point where the common perpendicular meets the -th axis. Assign the axis such that it points along the -th axis. Assign the axis such that it points along the common perpendicular. In case of intersecting axes assign such that it is orthogonal to the plane that contains both axes. Assign such that a right-hand system is generated. Assign such that it is coincident with if the joint variable is zero. For choose an origin and freely. Usually such that as many linkage parameters as possible to become zero.

### Frame attachment: example:

Frame attachment: example {0} fix to the basis and aligns with {1} if aligns along the joint axis All parallel  All joint rotary  all aligns for 3R kinematics (3 revolute joint) Parallel axes

### Frame attachment: example:

Frame attachment: example RPR kinematics (cylindrical) Last joint: „Roll“-motion of the hand {0} and {1} are coincident for shown configuration Intersection Prismatic joint Orthogonal Link variables Because axis 1 and 2 intersect

Link transformation: motivation (recapitulation) Goal: Solve the robot kinematics: Idea: Simplify the kinematics problem to n sub problems: Definition of a frame (coordinate system) for each robot link Relative transformations from relative to : OK ToDo

Derivation of link transformations Idea: Simplify the kinematics problem to n sub problems and 4n sub-sub problems: 3 Auxiliary frames:{P}, {Q}, {R} Frame {R} differs from {i-1} only by a rotation Frame {Q} differs from {R} only by a translation Frame {P} differs from {Q} only by a rotation {i} differs from {P} only by a translation

Derivation of link transformations Concatenation: General form:

### Actuator space, joint space, Cartesian space:

Actuator space, joint space, Cartesian space Actuator space Joint space Cartesian space

### Standard coordinate systems:

Standard coordinate systems {B}: Base frame {W}: Wrist frame {T}: Tool frame {S}: Station frame {G}: Goal frame Question : Where is my tool? Two extra transformations Advantage : Tool (hands) and an arbitrary base (also mobile) are incorporated.

### Standard coordinate systems: example:

Standard coordinate systems: example

### RX-90 (successor von PUMA):

RX-90 (successor von PUMA)

PUMA560

PUMA560

### Forward kinematics:

Forward kinematics Simplification:

### DIRECT KINEMATICS:

DIRECT KINEMATICS One joint: xi = Axi−1. Chain of joints: xn−1 = An−1 An−2 . . . A1 A0 x0. Easy to compute (matrix multiplication). Unique solution

### Mapping between kinematic:

Mapping between kinematic “ The determination of all possible and feasible sets of joint variables, which would achieve the specified position and orientation of the manipulator’s end-effector w.r.t the base ”

### Manipulator work space:

Manipulator work space To understand the effect of mechanical joint limits on the workspace, consider the 2-DOF planar manipulator with L1>L2 and joint limits on 1 and 2 as:

### INVERSE KINEMATICS:

INVERSE KINEMATICS For a kinematic mechanism, the inverse kinematic problem is difficult to solve. The robot controller must solve a set of non-linear simultaneous algebraic equations. Source of problems • Non-linear equations (sin, cos in rotation matrices). • The existence of multiple solutions. • The possible non-existence of a solution. • Singularities.

### Solvability:

Solvability The problem of solving kinematic equations of a manipulator is nonlinear: 0Tn( θ ) → ( θ 1, θ 2,…… θ n) Example Puma 560: Given 16 numerical values for 0T6 (four of which are trivial), solve for the six joint angles θ1 . . . θ6 1equations, which can only be formulated implicitly and are in most cases only geometrically or numerically solvable, but not analytically

### Existence of solutions:

Existence of solutions

### Existence of solutions:

Existence of solutions A robot with n < 6 cannot attain a general goal in position and orientation in 3-space Planar manipulator cannot reach out of z-plane In general, the workspace of a robot with n < 6 is a subset of a subspace, which can be associated with any type of robot Typical problem: if I cannot reach my goal, what is the closest solution? Please note: the operator usually refers to {t}, given {g}. however, we usually do not refer to {t}, rather to {w}

### Slide 49:

DEGENERACY AND DEXTERITY Degeneracy : The robot looses a degree of freedom and thus cannot perform as desired ٭ When the robot ’ s joints reach their physical limits, and as a result, cannot move any further ٭ In the middle point of its workspace if the z -axes of two similar joints becomes colinear An example of a robot in a degenerate position. Dexterity : The volume of points where one can position the robot as desired, but not orientate it.

### Multiple solutions:

Multiple solutions planar arm with n = 3 revolute joints has a large dexterous workspace in the plane any position in the interior of its workspace can be reached with any orientation problem: which solution? what is closeness? one possibility: (weighted) distance in joint space take into account obstacles

### Example: Puma 560:

Example: Puma 560 Four solutions shown for the same hand configuration Four more solutions are given by → eight solutions for one single goal. For a general manipulator with 6DoF, there are up to 16 solutions.

### Method of solution:

Method of solution Unlike linear equations there are no general algorithms which may be employed to solve a set of nonlinear equations Two classes: Closed form solutions Numerical solutions Numerical solutions: potentially problematic due to local minima and execution time Two classes of closed form solutions Algebraic Geometric

### Method of solution: Numerical Methods:

Method of solution: Numerical Methods is the Jacobi matrix (Jacobian). The iteration is stopped for ν max or

### Method of Solution:

Method of Solution Important result: all systems with revolute and prismatic Joints having a total degree six dof in a single series chain are Solvable However, this general solution is a numerical one Closed Form Solutions Closed form solutions exist for some robots with intersecting joint axes and/or many αi = 0 Virtually all industrial manipulators are designed sufficiently simple so that a closed form solution exists Sufficient condition: robot with six revolute joints has closed solution if three neighboring axes intersect Puma 560: axes 4, 5, 6 intersect

### Algebraic solution:

Algebraic solution

### Algebraic solution:

Algebraic solution

### Geometric Solution:

Geometric Solution Pieper treated manipulators with 6DoF in which three consecutive axes intersect Craig: case of all six joints revolute Last three axes intersect applies to other configurations which include prismatic joints as well applies to most commercially available industrial robots

### Repeatability & Accuracy:

Repeatability & Accuracy Accuracy is a term often confused with resolution and repeatability. Three factors are brought together to describe the characteristic or specification known as accuracy as related to robots: Accuracy: The resolution of the control components The inaccuracies of the mechanical components An arbitrary, never-before-approached fixed position (target) → Only meaningful if the robot is not only used as a tape recorder Repeatability: The ability of the robot to reposition itself to a position which It was previously commanded or trained. → Repeatability and accuracy are similar: however, they define slightly different performance concepts

### Thank You:

Thank You 