-
Notifications
You must be signed in to change notification settings - Fork 197
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DH Parameters do not Correlate with Pulse Direction #335
Comments
I'm not sure where you got the figure 2 DH table from. I've never seen that on specification sheets in North America. We normally don't put negative signs to the arm link length. There's often more than one way to represent a manipulator using DH parameters. |
Context for this question: kinetic-devel...Mitch-Woodside:path-correction. |
Figure 2 is one that I have created (in house) using the dimensions and axis directions from the MH180 specification sheet. I was referring to #238 for URDF creation, but I guess if this DH representation is just used to validate the link lengths then it wouldn't be as big of an issue. Personally, I was trying to create a jacobian matrix on the controller side which was why the axis direction of the DH parameters does matter to me. I can make it specific for my case, but I couldn't make it generalized based on the returned DH values. |
It is difficult to generalize it for all robot models because it varies based on the way the motor and the gear is mechanically mounted. In some cases, the rotation direction of the motor is inverted and that's not necessarily captured in the DH table/gear ratio reported. |
@EricMarcil: you should be able to attach |
You right. I was looking for an attachment button on the toolbar (clip icon) but I simply need to drop it in. Here's the document: |
Seeing as it would appear this is not actually an issue with how the GetDH functionality is implemented (but a mismatch between the assumption how it should work with how it actually works (and the fact that motor / joint / gearbox rotation direction is not captured in a DH table)), I'm going to close this. @Mitch-Woodside: please feel free to keep commenting on the issue of course. If it turns out we do need to fix something, we can re-open. |
@EricMarcil Thank you for the information and the documentation! I was going to have to reverse engineer the orientation methodology used, so you have definitely saved me some time. After reviewing the documentation I do have a couple of questions:
|
The document that I posted is not specific to ROS users and DH parameters is usually the reference for most robot representation. |
I'm working with a Motoman MH180 and when I retrieve the DH parameters using the parameter extraction library, the axis directions do not correlate with the pulse directions of the robot (see figures below, use axis 2 as an example). I'm not sure if this is purely my misunderstanding of the robot's structure or if the kinematic model in the robot controller is implemented differently for another purpose.
If there is a difference in axis direction between the robot controller and the joint commands then I could see this being problematic when using the extracted DH parameters for trajectory creation or robot control.
Figure 1. Axis Directions from MH180 Manual (167428-1)
Figure 2. DH Table created from MH180 Specification Sheet
Figure 3. DH Table from Parameter Extraction Library
The text was updated successfully, but these errors were encountered: