1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. General Category - Robot Forum
  4. Robot Geometry, Linear Algebra, Forward and Inverse Kinematics
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

Denavit-Hartenberg Parameters for Kuka-Kr16

  • Fkr
  • September 22, 2020 at 1:40 AM
  • Thread is Unresolved
  • Fkr
    Guest
    • September 22, 2020 at 1:40 AM
    • #1

    Hello, I am trying to solve kuka robot inverse kinematics with kinematic decoupling method, but when I tried to get DH parameters I couldn't get the parameters, I am at a dead end so if someone help me I will be very grateful.

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 22, 2020 at 12:19 PM
    • #2

    Hi,

    concerning DH Paramter:

    You need the DH Parameter in order to create you DH transformation for each axis.

    Unfortunately there are two ways doing the DH Transformation

    1. DH Transformation introduced by Denavit Hartenberg (rot.z(theta) * trans.z(d) * trans.x(a) * rot.x(alpha))

    2. DH Transformation introduced by Craig (rot.x(alpha) * trans.x(a) * trans.z(d) * rot.z(theta))

    Which DH Paramter you looking for?

    as a first step you should draw the kinematic model of a robot in xz-plane

    given coordinate systems:

    K0 Base coordinate system (your K0 is wrong - you draw yz-plane, K1, K2 and K3 as well)

    K6 Flange Coordinate System

    Send a corrected version of you kinematic model, please

    You also should not forget, that A1, A4 and A6 are rotating mathematical negative and A2, A3 and A5 mathematical positive.

    On Github searching for KR210 you will find some examples on the DH paramter (Craig). You just need the dimensions for your robot in

    regards

    MOM

  • Online
    SkyeFire
    Reactions Received
    1,052
    Trophies
    12
    Posts
    9,427
    • September 22, 2020 at 4:01 PM
    • #3

    I was trying to do this once, a few years ago, teaching myself DH in the process. I never completed it, since the project I was doing it for got cancelled, but I do recall running into a problem I couldn't resolve going from A3 to A4. I eventually found a YouTube video that showed me a workaround -- since the DH is a mathematical abstraction, it was possible to get correct results by, effectively, "mounting" A4 at A3 -- IIRC, I basically performed just the rotation from A3 to A4 without the translation, then translated A5 out to the correct distance.

    The end result worked like one of the older ABB robots, where A4 rotated nearly the entire length of the A3-A5 link arm. It was technically incorrect, but mathematically valid, since as long as the distance from Ae to A5 was correct, the exact position of A4 along its own axis of rotation made no difference.

    I was using the RTSX add-on for SciLab, as I recall.

  • Fkr
    Guest
    • September 22, 2020 at 7:03 PM
    • #4

    Sorry guys, it's my original robot, it has a step where I have a problem with denavit-hartenberg's parameters, you can see the joint parameters, called from q1 to q6, at that point are the real actuators, but the coordinate system of those parameters is not always on these actuatos, I found those coordinate systems with the denavit-hartenberg's algoritm.

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 22, 2020 at 7:13 PM
    • #5

    Case :

    DH Matrix introduced by Denavit and Hartenberg and Craig

    A1 inversed

    Comparison of the transformation matrices (symbolic vs. calculated)

    Test case 1 (introduced by Denavit Hartenberg):

    cos(theta):

    s11 = c11 = 1 => theta = 0.0° (multiplied by $AXIS_DIR[1])

    sin(alpha):

    s32 = c32 = -1=> alpha = -90.0°

    a:

    s14 = c14 = cos(0)*260.0 => 260.0

    s24 = c24 = sin(0)*260.0 => 0.0

    d:

    s34 = c34 => 675.0

    result: theta = (-)0.0; d = 675.0; a = 260.0; alpha = -90.0;

    Home work: do the same thing with DH Transformation introduced by Craig

    (the indinces of the symbolic DH Transformation is not alway correct - the rest is ok)

    Edited once, last by MOM (September 22, 2020 at 8:46 PM).

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 22, 2020 at 7:29 PM
    • #6

    @Fkr

    K6 is wrong

    On the real robot X-axis is pointing downwards

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 22, 2020 at 7:34 PM
    • #7

    @Fkr

    check this image for the axes rotations


    you will find it in some of your KR16 manual

  • Fkr
    Guest
    • September 23, 2020 at 1:04 AM
    • #8

    Well, I finally used the decoupling method and the robot end link is positioned near the desired point, there is a 5cm error, to me is a bad result :thinking_face:

    I used this model to get the angles q1, q2 and q3, and to get the angles from q4 to q6 I used the whole robot

  • Fkr
    Guest
    • September 23, 2020 at 1:05 AM
    • #9

    It was the result:

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 23, 2020 at 10:04 AM
    • #10

    Hi,

    my robot is positioned like this:


    lines

    no 1: axes values (taken from your image)

    no 2: calculated position (FK)

    no 3: recalculated axes values (IK)

    mine looks different

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 23, 2020 at 5:24 PM
    • #11

    so I had a closer look to your post #8

    draw the kinematic model of your robot with all joints set to 0.0 (A1 thru A6, some robot could move to this position, but it is easier to calculate!)

    I gave you an example for axes A1 and A2 (see post #5)

    A1, A2 and A3 (Z-axis) pointing in the opposite direction (see also post #7 for that)

    (this is the reason why my axis 2 is pointing up and your A2 is pointing down)

    Where you got the number 0.6709 from - you are not allowed to make any orientation change besides theta or alpha

    (this part of the drawing is wrong - your first guess was correct - post #8)

    To me you are not 5 cm off, you are 800 mm in Z off

  • Fkr
    Guest
    • September 23, 2020 at 6:34 PM
    • #12

    MOM , did you use decoupling? Or did you multiply all the matrices A01*...*A56 and then use A01^-1*T = A12*...*A56 to get the angles? and thanks for your advices :smiling_face:

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 23, 2020 at 7:02 PM
    • #13

    I just followed the rules of DH.

    for FK:

    1. draw kinematic model of the robot with all axes set to zero

    2. get the coordinate system for every axis

    3. get the DH Parameter for every axis (as introduced by Denavit Hartenberg - A1, A4 und A6 are inverted)

    4. calculate the transformation matrices (as introduced by Denavit Hartenberg)

    5. calculate flange frame (T06 by multpliying T01*T12*T23*T34*T45*T56)

    for IK:

    1. calculate wrist center point (wcp)

    2. using wcp to calculate axis position for A1, A2 and A3 (which gives 4 sets of angles)

    3. calculate R36

    4. Using R36 to calculate A4, A5 and A6 (which gives either 2 more choices (+/- 180°) or eight more choices (A4 and A6 +/- 360.0°)

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 26, 2020 at 12:40 PM
    • #14

    is your problem solved or are there any more questions?

  • Fkr
    Guest
    • September 27, 2020 at 6:18 AM
    • #15

    I couldn't solve it, sorry, but thank you for your advices :smiling_face:

  • MOM
    Reactions Received
    175
    Trophies
    7
    Posts
    1,424
    • September 27, 2020 at 3:10 PM
    • #16

    sad to hear that. Where got you stuck?

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Tags

  • robot arm
  • KUKA
  • Denavit–Hartenberg
  • kinematic params
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download