arduinoraspberry-piroboticsinverse-kinematics

denavit hartenberg 6dof moveo inverse kinematic robot arm


I need your help. I cant get the denavit hartenberg matrix right. (for this robot: https://github.com/BCN3D/BCN3D-Moveo) My robotic arm has 6 dof (normal one has only 5) but I dont get how to configure the theta and alpha variable for it. Current matrix looks like this:

joint d r alpha theta
1 232.0 0 ? ?
2 0 223.0 ? ?
3 0 0 ? ?
4 224.0 0 ? ?
5 0 0 ? ?
6 175.0 0 ? ?

(If this table doesn't look right click here) The robotic arm is looking straight in the air while being in the home position.

How does the denavit-hartenberg matrix look like?

More pictures: https://www.bcn3d.com/bcn3d-moveo-the-future-of-learning/


Solution

  • DH Parameters allow us to fill in the elements of our transformation matrices according to a schema. This schema has some limitations to it, which sometimes calls for clever tricks to get by any issues - but more on that in a minute.

    First off, about the parameters themseleves.

    Furthermore, DH notation presupposes the following about the axes of the coordinate frames:

    Below is an image of your system in the home pose with coordinate frames applied according to DH notation.

    home pose kinematic chain

    As you might notice, DH Notation does not allow for a displacement between the rotation and torison joint frames. This is not a problem, since mathematically it does not make a difference on where the rotation occurrs. The curved lines denote that the relevant frames are placed in the same position for notation purposes.

    table snapshot

    Now the only thing you have to do is think about where the rotations of your joints might be inserted into the DH-table as well as the displacement beteween the rotational frames (l1 through 4).

    You may then insert the DH Parameters into the DH Matrix for each frame and use these transformations for your kinematic calculations.

    For future questions, you might want to think about posting them at the Robotics Stack Exchange site, it will probably be easier to get an answer there very quick.