Teaching Seven-Degrees-of-Freedom Robots

Seven-Degrees-of-Freedom (7-DOF) type robots have redundant axes as part of the inverse kinematic chain.

The benefit of this kinematic redundancy is that it allows such robots to require a small footprint and move in complex ways to avoid collision with obstacles and improve target reachability in constrained environments. The challenge with these robots is that their complexity requires additional information when you seek to teach them.

This page discusses:

Jogging 7-DOF Robots

The forward and inverse kinematic behavior of the 7-DOF robots are described.

Forward Kinematic Behavior

The forward kinematic behavior for 7-DOF robots during jog is identical to other robot models except that the joint tab of the Jog dialog box displays seven joints instead of the usual six.

Inverse Kinematic (IK) Behavior

The inverse kinematic (IK) behavior for a 7-DOF robot is dependent on the IK routine that has been setup for the model during its Robot Library definition and creation.

There are two basic approaches for the IK behavior:

Redundant Angle (RA) Behavior
In this approach, the seventh joint of the robot IK chain is maintained at its currently set angle value while the IK solves for the other 6 joints to reach the desired target.
Elbow Angle (EA) Behavior
In this approach, all seven joints of the robot IK chain are solved by the inverse kinematics algorithm so as to reach the desired target while also maintaining the requested Elbow Angle value for the robot arm. This Elbow Angle for a 7 DOF Robot arm is the angle between the plane of the arm and the vertical plane as shown.
  • Elbow Angle = -45

  • Elbow Angle = 0

  • Elbow Angle = +120

The choice of RA or EA for a particular 7-DOF robot is determined by the inverse kinematic routine that has been assigned to the robot during its definition.

As a result, the particular IK behavior for a 7-DOF robot during Jog is such that the motion of the orientation Robot results in the robot TCP following the orientation Robot position and orientation while maintaining the current value of the RA or EA. This angle value is displayed in the Cartesian tab of the Jog dialog box. In the case of an RA-type 7 DOF Robot, the limits in the display are the Joint limits for the redundant Joint 7. In case of an EA-type Robot, the limits are -180 to +180.

TCP Lock Precession

There is an additional behavior related to your specified modification of the angle value during IK jog.

If you modified the RA or EA (by typing in a number or using the spinners), the IK algorithm solves for the robot joint values such that the TCP position and orientation are locked in place while the arm orientation is modified to achieve the specified RA or EA value. If the spinner value is constantly changed by holding down the mouse, the arm appears to rotate or process between the robot base and the robot TCP. This type of behavior in jog is essential to exploiting the redundancy of 7-DOF robots and modifying their arm orientation without changing the TCP location so as to avoid obstacles and exploit the reachability benefits of the 7-DOF arm.

Teaching 7-DOF Robots

An example of the Teach dialog box in Table mode when teaching a 7-DOF robot is shown.

The angle value displayed in the Elbow Angle column is the RA or the EA value. In the case of an RA-type 7-DOF robot, the display limits of this field are the joint limits for the redundant Joint 7. In the case of an EA-type 7-DOF robot, the display limits for this field are -180 to +180 degrees.

  • When you Insert a new move operation while teaching a 7-DOF robot, the current value of its RA or EA is also displayed and saved into this new field.
  • If you invoke Jog during Teach, the Cartesian tab page provides you with the EA to exploit the behavior.
  • After doing any TLP type adjustment of the robot arm for collision or reachability, you can Modify the current operation in Teach and the robot's current new RA or EA value replaces the value for that operation.
  • During playback, for Target types of Tag or Cartesian, the RA or EA value that persists with the operation is used by the robot's IK algorithm to compute the appropriate solution for all seven joints of the robot. For target Target types of Joint or Home, the RA or EA value is ignored since all seven joint values are already specified.
  • During playback, for Motion types of LIN or CIR, the RA or EA value is smoothly interpolated by the motion planner from the initial target related value to the final related target value. This results in any EA or RA values you selected for obstacle avoidance reasons being maintained during the intermediate steps of the robot's motions. For Motion types of JNT or SLEW, the RA or EA value is ignored during the intermediate steps of the robot motion since there is no use of the robot's IK algorithm during the intermediate step computations for these motion types.