Ora

What is the Difference Between Modified and Standard DH Parameters?

Published in Robot Kinematics 5 mins read

The fundamental difference between Modified DH (MDH) and Standard DH (SDH) parameters lies primarily in where coordinate frames are attached to the robot links and the specific sequence of transformations used to relate consecutive frames. Both conventions provide a systematic way to model robot kinematics using homogeneous transformation matrices, but their methodological details lead to distinct parameterizations.

Understanding DH Parameters

Denavit-Hartenberg (DH) parameters are a widely used convention in robotics to describe the spatial relationship between two rigid bodies (links) connected by a joint. They simplify the process of assigning coordinate frames to each link of a robot manipulator and deriving its forward kinematics. There are four parameters for each link-joint pair:

  • a (link length): The distance along the common normal between consecutive Z-axes.
  • α (link twist): The angle about the common normal to align consecutive Z-axes.
  • d (joint offset): The distance along the Z-axis of the previous frame to the common normal.
  • θ (joint angle): The angle about the Z-axis of the previous frame to align consecutive X-axes.

While the parameters themselves are similar, their specific definition and the procedure for assigning coordinate frames differ between the Standard and Modified conventions.

Standard DH (SDH) Parameters

The Standard DH convention, often associated with the original Denavit and Hartenberg paper and textbooks like Craig's, follows a specific set of rules for frame assignment and transformation:

  • Coordinate Frame Placement:
    • The Z-axis (z_i) of frame i is aligned with the axis of joint i+1. This means the Z-axis of frame i-1 is along joint i.
    • The X-axis (x_i) of frame i is placed along the common normal between the z_i-1 axis and the z_i axis. If the Z-axes are parallel, x_i is chosen arbitrarily but consistently (e.g., perpendicular to both).
    • The origin of frame i is located at the intersection of the z_i-1 axis and the common normal (x_i).
  • Order of Transformations:
    To transform a point from frame i to frame i-1 (or vice-versa in matrix multiplication), the sequence of operations is typically:
    1. Rotate θ_i about the z_i-1 axis (R_z(θ)).
    2. Translate d_i along the z_i-1 axis (T_z(d)).
    3. Translate a_i along the new x_i axis (T_x(a)).
    4. Rotate α_i about the new x_i axis (R_x(α)).
      This sequence is often represented as: T = R_z(θ) * T_z(d) * T_x(a) * R_x(α).

Modified DH (MDH) Parameters

The Modified DH convention, often attributed to Khalil and Kleinfinger (or sometimes Hayati), provides an alternative approach to frame assignment and transformation order.

  • Coordinate Frame Placement:
    • The Z-axis (z_i) of frame i is aligned with the axis of joint i. This means the Z-axis of frame i is along joint i.
    • The X-axis (x_i) of frame i is placed along the common normal between the z_i axis and the z_i+1 axis. If the Z-axes are parallel, x_i is chosen arbitrarily but consistently.
    • The origin of frame i is located at the intersection of the z_i axis and the common normal (x_i).
  • Order of Transformations:
    The sequence of operations to transform from frame i-1 to frame i is different:
    1. Rotate α_i-1 about the x_i-1 axis (R_x(α)).
    2. Translate a_i-1 along the x_i-1 axis (T_x(a)).
    3. Rotate θ_i about the new z_i axis (R_z(θ)).
    4. Translate d_i along the new z_i axis (T_z(d)).
      This sequence is often represented as: T = R_x(α) * T_x(a) * R_z(θ) * T_z(d). Note that the α and a parameters here often relate to the previous link, while θ and d relate to the current joint, depending on the specific indexing convention used.

Key Differences at a Glance

The following table summarizes the primary distinctions between the two conventions:

Feature Standard DH (SDH) Modified DH (MDH)
Z-axis Assignment z_i aligns with joint i+1 (next joint) z_i aligns with joint i (current joint)
X-axis Definition Common normal between z_i-1 and z_i Common normal between z_i and z_i+1
Frame Origin Location Intersection of z_i-1 and x_i Intersection of z_i and x_i
Transformation Order R_z(θ) → T_z(d) → T_x(a) → R_x(α) R_x(α) → T_x(a) → R_z(θ) → T_z(d)
Common Reference Denavit & Hartenberg (1955), Craig's Robotics Khalil & Kleinfinger, Hayati, some robotics texts
Link-Frame Relation Frame i is attached to link i but describes joint i+1. Frame i is attached to link i and describes joint i.

Practical Implications and Considerations

  • Consistency is Key: Regardless of which convention is chosen, it is crucial to apply it consistently throughout the entire robot's kinematic chain. Mixing conventions will lead to incorrect kinematic models.
  • Software and Libraries: Many robotics software packages and libraries (e.g., in MATLAB, ROS) may implicitly use one convention over the other. It's important to understand which one is being used when integrating with existing tools.
  • Simplicity for Specific Robot Types: Some robotic arm configurations might be simpler to model using one convention over the other. For instance, MDH can sometimes result in simpler parameter tables for robots with many parallel or orthogonal axes.
  • Historical Context: SDH is often considered the "classic" approach and is widely taught, while MDH offers an alternative that can sometimes be more intuitive for specific types of robot designs.

Ultimately, both Standard and Modified DH parameters are effective tools for robot kinematics, differing mainly in their conventions for coordinate system placement and the order of elementary transformations. The choice between them often depends on personal preference, the specific robot architecture, or adherence to a particular textbook or software standard.