LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

robot arm dh link

I've been working with the robot arm module and making very good progress at simulating Denso VS series 6 axis robot arm for a development project on a tight schedule. Except now I am becoming more confused buy the module's implementation of the Denavit-Hartenberg kinematic parameters. The "Rotation" or "theta" term appears to be ignored. The five DH joint parameters" alpha, r, theta, d and type" should be all that's needed. Correct? For most joints the last (sixth?) term in the kinematic properties cluster "Coord Offset" appears to do what the Theta term isn't. But for the life of me, I can't find a combination of any parameters that properly describe the arm in its entirety.

 

Ultimately this issue reveals itself at the end effector which is visually correct, but has mis-oriented coordinate. Therefore output transformation angles don't match the real life robot's angles.

 

 

0 Kudos
Message 1 of 19
(4,931 Views)

I'd really like to edit/change the title of the original post but having a difficult time w/ that too.

0 Kudos
Message 2 of 19
(4,905 Views)

Are you using the Robotics module or the Denso Toolkit? Some of your stuff looks like it is from the robotics module but the 3d picture does not.

0 Kudos
Message 3 of 19
(4,892 Views)

I am using the Denso toolkit with the project... but the graphics are completly custom and the no Denso Tookit code is implicated with the issue I'm describing. It doesn't use DH parameters. What I ultimatly need is to match the inverse kinematics generated by LV with those generated by Denso.

0 Kudos
Message 4 of 19
(4,885 Views)

I am not sure entirely what the robot is supposed to look like but I can give you some general guidelines.

 

1) Theta vs offset - Most textbooks etc use theta to describe the angle of the revolute joint. In this case we not only need theta to describe the angle of the joint at any position but the offset to help configure how the zero of theta is oriented.

So theta the joint angle that is modified by the kinematics while the offset is a constant.

 

2) To debug my arm parameters I first try to check whether all my joints rotate around their z axis. That is the first constraint to set when trying to derive DH parameters. Assuming you have that then the twist and distance are fairly easy to get.

 

At this point you should have an arm where all the theta's rotation match the joints except for offsets.

 

3) Fix offsets last.

0 Kudos
Message 5 of 19
(4,876 Views)

To confirm your setup you are trying to get Inverse Kinematics from the Robotics Module and use it with the Denso Toolkit. Note that the Robotics Module uses a general numerical solver with all the advantages and disadvantages thereof. You will at least have to think about determinism (numerical solvers are not deterministic) and problems near singularities (numerical solvers often do not converge to a solution near them).

0 Kudos
Message 6 of 19
(4,872 Views)

I understand the difference between Theta and offset. For anyone interested, here is a link to the best reference I've found:

http://www.youtube.com/watch?v=rA9tm0gTln8

 

It's just that modifying the Theta values in appear to have ZERO effect on any joint in the LV model. In the pict below of the model shown in joint position 0,0,0,0,0,0 all axis rotate as they should. The 6th Joint is the parent for the red coordinate system at the base of the end effector. Red's Z is pointed in the correct direction and it has no graphical angular offsets.

 

Red indicates (by the direction of x) the end effector is rotated 180 deg about the Z axis from the desired position. My issue is that no DH Theta parameter value in LV will change this or anything else. GRRRR

 

LV robot arm Denso VS.jpg

0 Kudos
Message 7 of 19
(4,850 Views)

An offset of 180 degrees on the last joint should then be your solution. The theta values are overwritten by kinematics calculations and you do not want to store any configuration info there for revolute joints. You may want to do so for prismatic joints but you do not have any of those in this robot so far.

0 Kudos
Message 8 of 19
(4,843 Views)

Maybe the offset is on the second to last joint. since they are at the same point

0 Kudos
Message 9 of 19
(4,840 Views)

Modifying any Theta value for any link has no effect on any joint.

0 Kudos
Message 10 of 19
(4,831 Views)