AuboRobot / aubo_robot

Developed for aubo robot (http://www.aubo-robotics.cn/)
http://wiki.ros.org/aubo_robot
BSD 3-Clause "New" or "Revised" License
207 stars 92 forks source link

Inquire for the D-H parameter model.jpg #62

Open MingshanHe opened 3 years ago

MingshanHe commented 3 years ago

Hello, it's my honor to have this issue. I think there is something wrong in the picture which is named DH model .jpg and the x Aixs of 5th coordinate has the wrong direction. Because the modified D-H param will use the z Aixs of next coordinate to cross the z Axis of present coordinate and it will turn perpendicular to the plane inward Would you like to help me to verify it? Thanks.

nlizarralde commented 3 years ago

Hi, I don't know what is picture 'DH model .jpg', so I'm going to use the picture below for reference. As you can see, the x Axis of 5th coordinate system (x5) is perpendicular to the plane pointing outwards, because it should be normal to both z5 and z6 (according to Modified DH Parameters). In situations like this, I was taught that x5 could be pointing either inwards or outwards. The DH table will look a little different depending on which one you choose, but as long as you're consistent, you should have no problems.

aubo_i5_dh

MingshanHe commented 3 years ago

Firstly, Thanks for your answer. And My question is that the x Axis of the fifth coordinate need to be determined by the z Axis of the sixth coordinate and the fifth. So as the principle of the right hand, from the z Axis of the sixth coordinate to the z Axis of the fifth coordinate, the x Axis of fifth coordinate will be determined toward the inward direction. And would you like to introduce some difference between the little difference of it? Thanks and best regards.

nlizarralde commented 3 years ago

Let: 'x5' = x Axis of the fifth coordinate 'z5' = z Axis of the fifth coordinate 'z6' = z Axis of the sixth coordinate 'x' = cross product (given by the right hand rule)

You're saying that x5 = z6 x z5. According to DH Convention, x5 only needs to be normal to the plane of z5 and z6. Putting that in math terms: x5 = z6 x z5 OR x5 = - (z6 x z5) = z5 x z6

The next step is defining the DH parameters: alpha5 = angle from z5 to z6 measured about x5 theta6 = angle from x5 to x6 measured about z6

If you use x5 = z5 x z6 like the previous picture, alpha5 = pi/2, and theta6 offset = 0.

If you use x5 = z6 x z5 like you did, and leave everything else the same, alpha5 = -pi/2, and theta6 offset = pi.

That's what I meant when I said "The DH table will look a little different depending on which one you choose".

So you can use the right hand rule just like you did and it's fine, but the picture is not wrong.