Assigning coordinate frames

From Robotics
Revision as of 10:41, 11 November 2015 by Nickchen (talk | contribs)

Jump to: navigation, search
← Back: Common normal Overview: Denavit-Hartenberg Convention Next: Denavit-Hartenberg parameters

To be able to determine the spatial relationship or transformation, respectively, between the links of a manipulator, local coordinate frames have to be assigned to them first. There are several rules that have to be observed when coordinate frames are to be assigned following the Denavit-Hartenberg convention. The first rule is, that the manipulator has to be moved to its zero position. So all the joints or their joint parameters, respectively, have to be set to zero. Then the coordinate frames are assigned regarding the zero position.

Following the notation, a coordinate frame is attached to each end of a link at the corresponding joint. The orientation of the coordinate frames depends on the joint and on the prior frame. The following steps describe how the coordinate frames are determined:

First coordinate frame K_0
Following the notation, the first coordinate frame is always the base or reference frame K_0. The origin of the base is coincident with the origin of the first joint and their axes are aligned. So the joint axis of the first frame is normal to the xy-plane of the base or world frame, respectively. As the world frame is usually known, the orientation of K_0 is already defined and does not have to be determined.
Origin of the frames
According to the notation, the intermediate frames K_1 to K_{k-1} are attached to the distal joints. The exact origin of frame K_n corresponds to the intersection of the common normal \vec{\mathbf{n}}_n and the main axis of the distal joint J_{n+1}. In the figure about common normals, these points are marked with red dots. If there is no unique common normal, so if the axes are parallel or collinear, the origin of the distal joint is chosen.
The last frame is always located in the center of the end-effector.
z-axis
The z-axis of coordinate frame K_n is always coincident with the main axis of joint J_{n+1}. This holds for the base frame as well as for all the intermediate frames. So the direction of the z-axes can easily be determined for the whole manipulator.
Corresponding to the notation, there is no joint and consequently no main joint axis at the end-effector. Thus the last frame K_k is usually kept parallel to the previous frame K_{k-1} if possible.
x-axis
The x-axis of frame K_n is defined as collinear to the common normal \vec{\mathbf{n}}_n of the link. This means that it lies on the same line, but could either have the same direction or the opposite. For simplicity, the direction of the x-axis should be kept as for the previous frame if possible.
As the base frame has no prior coordinate frame, there is no common normal \vec{\mathbf{n}}_0. Thus, if the world frame is not defined yet, the first x-axis is a free choice. Nevertheless it should be chosen well-considered as it is important for the determination of the Denavit-Hartenberg parameters.
For special case 2 of the common normal (intersection), the length of the common normal is 0, but its direction is distinct.
If the two joint axis are collinear (special case 3), the direction of the common normal is not distinct. As already mentioned before, in such a case, the direction of the x-axis should be kept preferably like before. This simplifies the determination of the Denavit-Hartenberg parameters.
Like mentioned before, the last coordinate frame K_k and so the x_k-axis is usually kept as before if possible.
Right-hand-rule.png
y-axis
As the x- and the z-axis are already defined, the y-axis can be determined using the right hand rule shown in the figure on the right.

For further illustration, watch the video in the next article about the Denavit-Hartenberg parameters. There the whole process including the assignment the coordinate frames and the determination of the parameters is explained very well.

Example: Assigning coordinate frames

The left side of the figure below shows a manipulator in its zero position. It consists of 5 links and the corresponding 5 joints J_1 to J_5. 4 of the joints are revolute joints with <math>\theta_nand one is a prismatic joint.

Dh-ex-frames.png