Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

DH parameters of KR5 arc from RoboDK

#1
Hello to all,

I've seen that similar questions were discussed earlier, so I hope there is someone here who can help me understand why there is a difference between calculation of the TCP using DH parameters presented here:
Understanding DH Parameters using KUKA KR5 Arc Industrial Robot

When I load this robot in RoboDK and perform axis jog for these joint angle values, I get different result even though the first component X is the same (scaled to mm from meters).

I used the following py script from robotics toolbox to do calculation:

Code:
import roboticstoolbox as rtb
from spatialmath import SE3
import numpy as np

# Conversion factor from mm to meters
mm = 0.001

# -------------------------------# Define KUKA KR5 ARC DH parameters

# Link format: RevoluteDH(d=..., a=..., alpha=..., offset=deltatheta)
link1 = rtb.RevoluteDH(d=400*mm, a=180*mm, alpha=np.pi/2, offset=0)
link2 = rtb.RevoluteDH(d=0, a=600*mm, alpha=0, offset=0)
link3 = rtb.RevoluteDH(d=0, a=120*mm, alpha=np.pi/2, offset=0)
link4 = rtb.RevoluteDH(d=620*mm, a=0*mm, alpha=np.pi/2, offset=0)
link5 = rtb.RevoluteDH(d=0, a=0, alpha=np.pi/2, offset=0)
link6 = rtb.RevoluteDH(d=115*mm, a=0, alpha=0, offset=0)


kuka_robot = rtb.DHRobot([link1, link2, link3, link4, link5, link6], name="KR5_Arc")


q_raw = [0, -np.pi/4, np.pi/2, 0, np.pi/4, 0]

q = [
    q_raw[0],   
    q_raw[1],  
    q_raw[2],  
    q_raw[3],   
    q_raw[4],   
    q_raw[5]   
]

# Forward kinematics

T = kuka_robot.fkine(q)

print("End-effector pose:")
print(T)

print("This is from RoboDK")
T = SE3.Trans(1127.523, 0, 355.711) * SE3.Rz(-180, unit='deg') * SE3.Rx(180, unit='deg')
print(T)


Attached Files Thumbnail(s)
RoboDKDifference.png   
#2
If you created your own custom robot kinematics you should validate each single parameter of your DH or DHM table. Make sure also that the units are correct (radians vs. degrees and meters vs. millimeters). Also make sure that the sense of joint rotation is properly adjusted.
  




Users browsing this thread:
1 Guest(s)