Denavit-Hartenberg Reference Frame Layout

TekkotsuRobotics · 541K views · 2009 · 3:01

Open on YouTube

RoboticsMechanical & precision engineeringtutorial

Why Robotics Stack Exchange recommends it

Robotics Stack Exchange answerers, especially Chuck, point people to it as the short, clear explainer for assigning DH frames and parameters whenever someone's frames or parameter table look wrong.

Recommended by 5 people across 10 different months, 2014 to 2025.

What it is

A 3-minute screencast from the Tekkotsu robotics project that shows how to place reference frames on a kinematic chain using the Denavit-Hartenberg convention. It walks through putting z-axes along joint axes, x-axes along common normals, and reading off the four parameters d, theta, r and alpha.

What people said

Strong rec Ben · 2014-09 · Robotics Stack Exchange · on “Forward Kinematics/D-H parameters for perpendicular joint axes”

This [this video] by TekkotsuRobotics does a great job at explaining how to specify DH parameters, including what to do when you have parallel axes of rotation. Also note that different textbooks have slightly different notations regarding which joint and link the parameters apply to. So you should stick with the convention of your professor, school, textbook, etc. This paper: " Lipkin 2005: A Note on Denavit-Hartenberg Notation in Robotics [LINK] " explains the 3 main DH parameter conventions and how they differ.

Strong rec Chuck · 2015-08 · Robotics Stack Exchange · on “How to determine x-axis if the two z-axis are intersecting in Denavit Hartenberg representation”

Check out this tutorial video on DH Parameters - it's amazing! [this video] . Regarding your question, I believe if you try crossing your z-axes, $z_1 \times z_2$, you'll get the x-axis you're looking for (orthogonal to both axes). Because the two z axes intersect, your $r$ or $a$ value, depending on your notation, will be zero because the new x-axis lies on your previous z-axis.

Strong rec Chuck · 2018-08 · Robotics Stack Exchange · on “D-H parameters verification”

Here is a video [this video] on what the DH parameters are that I highly recommend to everyone that wants to learn about them. I think I understand your question, and the trouble you're having is coming from the fact that your frames are not aligned correctly per the DH standard. Since they're not aligned correctly, your terms are not working out right. The important thing is that, as mentioned around 0:42 in the video, "The DH parameters are derived from the common normal between the z axes. The common normal is orthogonal to both vectors and is also the shortest line between them." So the problem when you ask, As it illustrates, rotation of z-axis of revolute joint number 4 happened about the y

Strong rec Chuck · 2020-04 · Robotics Stack Exchange · on “Verifying DH parameters. Unexpected Output”

@DdefinOrsstt - Did you watch the video I linked [this video] ? It's short and really great; it's the best video I've seen on DH parameters.

Strong rec Chuck · 2025-03 · Robotics Stack Exchange · on “Modified D-H for 5DOF Robotic Arm Forward Kinematic”

This video [this video] is the gold standard of DH explainers in my opinion. Instead of posting an image and saying, "What's wrong," please *edit your question* to explain how you arrived at the values in that table and why you think they're wrong.

Strong rec Chuck · 2025-03 · Robotics Stack Exchange · on “Dh parameters of a kuKA KR8”

This video [this video] is the gold standard of DH explainers in my opinion. Instead of posting an image and saying, "What's wrong," please *edit your question* to explain how you arrived at the values in that table and why you think they're wrong. It would be helpful if you could show a diagram just for Joint 0 and explain how you calculated each DH parameter, then show a diagram just for Joint 0, L1, and Joint 1, and explain how you calculated the Joint 1 parameters, then Joint 1, L2, and Joint 2, etc.

Strong rec Chuck · 2025-03 · Robotics Stack Exchange · on “Abb industrial robot model 6 DOF robot arm frame All-aluminum robotic arm”

Welcome to *Robotics*, saira sanawar. This video [this video] is the gold standard of DH explainers in my opinion. Instead of posting an image and saying, "What's wrong," please *edit your question* to explain how you arrived at the values in that table and why you think they're wrong. It would be helpful if you could show a diagram just for Joint 0 and explain how you calculated each DH parameter, then show a diagram just for Joint 0, L1, and Joint 1, and explain how you calculated the Joint 1 parameters, then Joint 1, L2, and Joint 2, etc.

Strong rec Chuck · 2025-09 · Robotics Stack Exchange · on “6 DOF Robotic Arm Modified D-H Problem”

This is the video [this video] I refer everyone to for DH questions; it's short and excellent. You have drawn z-axes here, but you have not provided any x-axes. Looking at your diagram, though, the common normal between $z_1$ and $z_2$ would point down. Also looking ath this, the 1-2 transition looks basically the same as the 2-3 transition, but you didn't mention difficulty with the 1-2 transition so now I'm wondering if you meant 3-4 and 4-5? Assuming you did mean 2-3, following along with the video for the 2-3 transition, The $j_3$ x-axis points along the common normal, away from $z_2$ , so it's pointing toward the prismatic $j_5$ joint. $d$ is the depth along the previous joint's $z$ axis to

Recommends Chuck · 2015-06 · Robotics Stack Exchange · on “DH-Parameters for Forward Kinematics for Translatory Motion only”

You don't need an explicit declaration for X, Y, and Z because the information is all relative to the previous joint. For a terrific tutorial, see this video [this video] . You don't typically use DH parameters to generate a transform from one fixed coordinate to another fixed coordinate; you use them to define joint motions . In your example, you want to recreate the transform from COS0 to COS1. (By the way, cos is the symbol for cosine [LINK] I would suggest using F for denoting different frames of reference) You use the following DH parameters: d = 2mm $\theta$ = 90 degrees ($\frac{\pi}{2}$) r = 5mm $\alpha$ = -90 degrees ($-\frac{\pi}{2}$) The problem here is that, again, DH parameters are fo

Recommends Brian Lynch · 2015-11 · Robotics Stack Exchange · on “Denavit Hartenberg parameters”

The point is this: DH parameters allow you to transform from one joint to another using a common set of rotations and translations (see this video [this video] for clarification). Your particular configuration may need a modified version of DH parameters -- namely a y-component for the link length (usually has only x- and z-components, $a$ and $d$, respectively). This is because the new rotation axis for a joint should rotate about the previous x-axis, but your configuration cannot be defined as such.