Difference between revisions of "Assigning coordinate frames"
(→Assigning the coordinate frames) |
|||
(43 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{Navigation|before=[[ | + | {{Navigation|before=[[Common normal]]|overview=[[Denavit-Hartenberg Convention]]|next=[[Denavit-Hartenberg parameters]]}} |
__NOTOC__ | __NOTOC__ | ||
− | 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 | + | 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 of links, joints and coordinate frames|notation]], a coordinate frame is attached to each end of a link at the corresponding [[Types of joints|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 <math>K_0</math> | |
+ | :Following the [[Notation of links, joints and coordinate frames|notation]], the first coordinate frame is always the base or reference frame <math>K_0</math>. 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 <math>xy</math>-plane of the base or world frame, respectively. As the world frame is usually known, the orientation of <math>K_0</math> is already defined and does not have to be determined. | ||
− | + | ;Origin of the frames | |
+ | :According to the [[Notation of links, joints and coordinate frames|notation]], the intermediate frames <math>K_1</math> to <math>K_{k-1}</math> are attached to the distal joints. The exact origin of frame <math>K_n</math> corresponds to the intersection of the [[Common normal|common normal]] <math>\vec{\mathbf{n}}_n</math> and the [[Types of joints|main axis]] of the distal joint <math>J_{n+1}</math>. In the [[Common normal|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 <math>K_n</math> is always coincident with the [[Types of joints|main axis]] of joint <math>J_{n+1}</math>. This holds for the base frame as well as for all the intermediate frames. So the direction of the <math>z</math>-axes can easily be determined for the whole manipulator. |
+ | :Corresponding to the [[Notation of links, joints and coordinate frames|notation]], there is no joint and consequently no main joint axis at the end-effector. Thus the last frame <math>K_k</math> is usually kept parallel to the previous frame <math>K_{k-1}</math> if possible. | ||
− | + | ;x-axis | |
+ | :The x-axis of frame <math>K_n</math> is defined as collinear to the [[Common normal|common normal]] <math>\vec{\mathbf{n}}_n</math> 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 <math>x</math>-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 <math>\vec{\mathbf{n}}_0</math>. Thus, if the world frame is not defined yet, the first <math>x</math>-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 [[Common normal|special case 2]] of the common normal (intersection), the length of the common normal is <math>0</math>, but its direction is distinct. | ||
+ | :If the two joint axis are collinear ([[Common normal|special case 3]]), the direction of the common normal is not distinct. As already mentioned before, in such a case, the direction of the <math>x</math>-axis should be kept preferably like before. This simplifies the determination of the [[Denavit-Hartenberg parameters]]. | ||
+ | :Like mentioned before, the last coordinate frame <math>K_k</math> and so the <math>x_k</math>-axis is usually kept as before if possible. | ||
− | [[File: | + | [[File:right-hand-rule.png|right|100px]] |
− | + | ;y-axis | |
+ | :As the <math>x</math>- and the <math>z</math>-axis are already defined, the <math>y</math>-axis can be determined using the [[Transformations|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 |
+ | |Title=Assigning coordinate frames | ||
+ | |Contents= | ||
− | + | The left side of the figure below shows a 5-link manipulator in its zero position and the corresponding [[Types of joints|main joint axes]] and [[Common normal|common normals]]. | |
− | The | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ;<math>K_0</math> | |
+ | :The base coordinate frame <math>K_0</math> is already given located in the origin of joint <math>J_1</math>. | ||
− | + | ;<math>K_1</math> | |
− | + | :The red dot in <math>J_1</math> indicates the intersection of the [[Common normal|common normal]] with the [[Types of joints|main joint axis]]. So this is the origin of <math>K_1</math>. The <math>z_1</math>-axis is already determined by the [[Types of joints|main joint axis]] shown in blue. The <math>x_1</math>-axis is defined as collinear to the [[Common normal|common normal]]. So it could either point into the figure or out of it. Like in other situations, the <math>x</math>-axis should always be kept as before if possible. So the <math>x_1</math>-axis is chosen pointing out of the figure parallel to <math>x_0</math>. Then following the right-hand-rule, the <math>y_1</math>-axis is directed downwards. | |
− | + | ||
− | + | ;<math>K_2</math> | |
+ | :For <math>J_2</math> and <math>J_3</math> we have the [[Common normal|''parallel'' case]] of the common normal. So the location of the common normal is not unique. Thus the origin of coordinate frame <math>K_2</math> is set to the origin of joint <math>J_3</math>, which is marked with a red dot. The <math>z_2</math>-axis is again already defined. But as the direction of the common normal is not unique, the <math>x_2</math>-axis is kept as before. So the <math>y_2</math> stays as well as before. | ||
+ | |||
+ | ;<math>K_3</math> | ||
+ | :The [[Common normal|common normal]] of <math>J_3</math> and <math>J_4</math> is located in the intersection of the two joint axes (see red dot). So this is the origin of coordinate frame <math>K_3</math>. As you can see, the coordinate frames are not always located in the physical origins of the joints. The <math>z_3</math>-axis is defined by the [[Types of joints|main joint axis]] and the <math>x_3</math>-axis is defined as collinear to the common normal, so it can be kept as before. The <math>y_2</math>-axis is then pointing to the left. | ||
+ | |||
+ | ;<math>K_4</math> | ||
+ | :The position of the common normal is actually not unique along the two axes (see [[Common normal|example]] for the common normal). But in such cases the common normal is set such that it ends in the origin of the distal joint. So coordinate frame <math>K_4</math> is located in the origin of <math>J_5</math>. The <math>z</math>-axis is already defined. As the [[Common normal|common normal]] is now directed horizontally from the left to right, the <math>x_4</math>-axis has to be changed accordingly. It is to chosen to point to the right, although the opposite direction would also be correct. So the <math>y_4</math>-axis is directed into the figure. | ||
+ | |||
+ | ;<math>K_5</math> | ||
+ | :The last coordinate frame is attached to the end-effector. As there are no restrictions to its orientation for this manipulator, the axes are kept parallel to the axes of <math>K_4</math> to simplify the determination of the [[Denavit-Hartenberg parameters]]. | ||
+ | |||
+ | [[File:dh-ex-frames.png|center|950px]] | ||
+ | }} | ||
[[Category:Article]] | [[Category:Article]] | ||
[[Category:Denavit-Hartenberg]] | [[Category:Denavit-Hartenberg]] |
Latest revision as of 18:19, 13 November 2015
← 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
- Following the notation, the first coordinate frame is always the base or reference frame . 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 -plane of the base or world frame, respectively. As the world frame is usually known, the orientation of is already defined and does not have to be determined.
- Origin of the frames
- According to the notation, the intermediate frames to are attached to the distal joints. The exact origin of frame corresponds to the intersection of the common normal and the main axis of the distal joint . 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 is always coincident with the main axis of joint . This holds for the base frame as well as for all the intermediate frames. So the direction of the -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 is usually kept parallel to the previous frame if possible.
- x-axis
- The x-axis of frame is defined as collinear to the common normal 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 -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 . Thus, if the world frame is not defined yet, the first -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 , 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 -axis should be kept preferably like before. This simplifies the determination of the Denavit-Hartenberg parameters.
- Like mentioned before, the last coordinate frame and so the -axis is usually kept as before if possible.
- y-axis
- As the - and the -axis are already defined, the -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 5-link manipulator in its zero position and the corresponding main joint axes and common normals.
|