# Calculating Forward kinematics connection between theory and practice on example of KUKA robot

• Hello MOM,

I have checked everything again and I'm pretty confident that I didn't make a mistake. The cause of the difference is actual theta offset i.e. what is considered a variable. For example, when setting up coordinate systems, I have considered that zero positions of all angles corresponds to the same configuration that you considered as: [0, -90, 90, 0, 0, 0].

So when you calculate transformation matrix for [0,-60,90,0,0,0], I need to calculate for [0, +30, 0, 0, 0, 0], because comparing to mine assumed zero configuration, only th2 is changed for +30° because Z axis of joint 2 is oriented "into the screen from us".

So the following code:

will produce the following output:

Code
``````[       -0.5, -5.30288e-17,    0.866025,      2261.32]
[5.30288e-17,          1.0, 9.18485e-17, -1.06281e-13]
[  -0.866025,  9.18485e-17,        -0.5,       1465.7]
[          0,            0,           0,          1.0]``````

Edited once, last by Askic ().

• I do not like taking my picture, cut the correct information off and put wrong information on

I'm afraid this is a misunderstanding, the screenshot I made from your picture is initial configuration with all joint angles assumed to be zero in my calculations. I just attached a picture trying to explain why there is a difference in the calculations mentioned above. So the information is not wrong. The picture corresponds to the DH table I posted together in the same thread.

Just want to point out once again, that my DH parameters table is derived based on the initial configuration that is shown in the attached picture assuming that theta variables are zero.

So, when you calculate forward kinematics for [0 -60, 90, 0,0,0], I need to calculate for [0, +30,0,0,0,0].

I didn't put wrong information, I did put information that correspond to the DH table I placed in the same post.

I hope it is Ok with you now?

• your and my assumption acually does not count!

If you have a closer look at the data sheet you will see the zero position of axis 2 and axis 3

(and this is the correct assumption)

axis 2:

+20° | -130°

axis 3:

+144° | -100°

the "|" shows the zero position

• If you think you are right then I can't help you anymore (because I am wrong then).

But I would request to take my picture from post #21 off!

From my point of view this thread is closed

• Ok, thank you very much for your time and help.

I don't think and don't claim that you're wrong. I just went step by step setting up the DH table according to the DH instructions.

The difference in calculations was only because of what was considered as variable value in th2 and th3. Because, the way I approached, in the DH tables these values had constant part (offset). For example, var2 = var1+90° is still a variable, but if var1 belongs to a range [-30°, +30°], then var2 will have a different range [60°, 120°] . That is why there was a difference.

Your posts were very helpful to me.
We can consider this thread closed.

Edited once, last by Askic ().

## Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!