A serial arm consists of a base, a link or series of links connected at joints, and an end effector. The base is the position at the beginning of the first link in a serial arm, and the end effector is the position at the end of the last link in an arm.
You define the properties of joints and links in a robotic arm with the Robotic Arm VIs. The Robotics Module defines robotic arms as having n+1 links, numbered 0 to n, with n joints connecting the links. Joints have one degree of freedom. Link 0 originates at the base of the arm and link n ends with the end effector.
The Robotics Module further defines links according to the Denavit-Hartenberg (DH) convention, which considers a link and the joint at the end of the link to make up a link. For example, in the following illustration, when you define the position of link i-1 (2), you define both the properties of link i-1 (2) and joint i (5), which connects link i-1 (2) and link i (6).
|1 joint i-1||4 coordinate frame of link i-1||7 length of link i|
|2 link i-1||5 joint i||8 coordinate frame of link i|
|3 length of link i-1||6 link i||9 joint i+1|
Set the position of a link in an arm with the Set Kinematic Parameters VI. The length and twist angle inputs define the link by describing the relative locations of the axes of the joints at the ends of the link. The rotation angle and offset distances inputs of the VI define the position of the joint at the origin of the link.
As shown in the previous illustration, and according to the DH convention, the following definitions apply to the four inputs you specify for a serial arm link:
The axis of joint i (5) is aligned with zi-1. The xi-1 axis is directed along the normal from zi-1 to zi and for intersecting axes is parallel to zi-1 * zi.
According to the DH convention, you can represent the coordinate frame of link i (8) with respect to the coordinate frame of the link i-1 (4), or 0Ti = 0Ti-1i-1Ai, with the following 4-by-4 homogenous transform matrix:
where 0Ti is the homogenous transform describing the pose of coordinate frame i with respect to the world coordinate frame 0.
Use the Serial Arm Definition VIs to construct a serial arm in LabVIEW. Refer to the Inverse Kinematics for Puma 560 VI in the labview\examples\robotics\Robotic Arm\Robot Arm Examples.lvproj for an example of using the Serial Arm Definition VIs to construct a serial arm.