Company Events Academic Community Support Solutions Products & Services Contact NI MyNI

Controlling Serial Robotic Arms (Robotics Module)

LabVIEW 2013 Robotics Module Help

Edition Date: June 2013

Part Number: 372983D-01

»View Product Info

To control a serial robotic arm, you first must design a representation of the arm that defines its parameters. After you design the serial arm representation on the block diagram, use that representation to implement arm control by calculating joint positions and trajectories and connecting to motors that move joints.

Designing and Generating Serial Arm Representations

In LabVIEW you can design representations of generic serial robotic arms or represent arms that meet the definitions for Selective Compliant Assembly Robot Arms (SCARA), 5R Type 1, and some 6R arms. Based on their definitions, SCARA, 5R Type 1, and 6R arms require certain parameters, such as joint types and twist angles. For example, a SCARA arm must contain four links, two parallel revolute joints, and one prismatic joint. Generic arms do not require specific parameters, so you have more control over their representation.

Use the Initialize Serial Arm VI to design and generate a serial arm object for use on the block diagram.

Calculating Joint Positions

After you design and generate a serial arm object, use other Robotic Arm VIs to perform kinematic and other calculations for the arm. Certain arm types are more suitable for use with a specific inverse kinematics solver. Refer to the following section for recommendations about choosing an inverse kinematics solver.

Choosing an Inverse Kinematics Solver

LabVIEW provides analytical inverse and numerical inverse kinematics solvers. Choose an inverse kinematics solver according to the arm type you generate:

  • 5R Type 1, 6R, and SCARA arms—Use the Analytical Inverse Kinematics VI. This VI can reach a mathematical solution for these arm types because they have certain known parameters.
  • Generic arms—Use the Inverse Kinematics VI with arms that do not fit the 5R Type 1, 6R or SCARA definitions. This VI provides a numerical solver.

Analytical solvers attempt to compute an exact solution by inverting the forward kinematics equations. By using closed-form equations, the analytical solver in LabVIEW can execute deterministically, in a bounded amount of time. Numerical solvers use approximation to converge on a solution over an indeterminable number of iterations. Thus, the numerical solver in LabVIEW is prone to jitter and cannot guarantee bounded execution times. The numerical solver also might fail to converge on a solution or might switch between multiple possible solutions.


 Was this document helpful?  submit
  Helpful Not Helpful